
Загальна формула
=TRIM(RIGHT(SUBSTITUTE(text," ",REPT(" ",100)),100))
Резюме
Щоб отримати останнє слово з текстового рядка, ви можете використовувати формулу на основі функцій TRIM, ЗАМІНИ, ПРАВО та REPT. У наведеному прикладі формула в C6 така:
=TRIM(RIGHT(SUBSTITUTE(B6," ",REPT(" ",100)),100))
Що повертає слово "час".
Пояснення
Ця формула є цікавим прикладом підходу "грубої сили", який використовує той факт, що TRIM видалить будь-яку кількість провідних пробілів.
Працюючи зсередини, ми використовуємо функцію ЗАМІННИК, щоб знайти всі пробіли в тексті та замінити кожен пробіл на 100 пробілів:
SUBSTITUTE(B6," ",REPT(" ",100))
Так, наприклад, з текстовим рядком "один два три" результат буде виглядати так:
one----------two----------three
З дефісами, що представляють місця для читабельності. Майте на увазі, що між кожним словом буде 100 пробілів.
Далі функція ВПРАВО витягує 100 символів, починаючи справа. Результат буде виглядати так:
-------three
Нарешті, функція TRIM видаляє всі пробіли та повертає останнє слово.
Примітка: Ми використовуємо 100 довільно, оскільки це має бути достатньо великим числом для обробки дуже довгих слів. Якщо у вас є якась дивна ситуація із наддовгими словами, піднімайте це число за необхідності.
Обробка непослідовних інтервалів
Якщо текст, з яким ви працюєте, має невідповідні інтервали (тобто зайві пробіли між словами, зайві провідні або кінцеві пробіли тощо), ця формула працюватиме неправильно. Щоб вирішити цю ситуацію, додайте додаткову функцію TRIM всередину функції заміщення приблизно так:
=TRIM(RIGHT(SUBSTITUTE(TRIM(B6)," ",REPT(" ",100)),100))
Це нормалізує всі пробіли до запуску основної логіки.