
Общая формула
=TRIM(RIGHT(SUBSTITUTE(text," ",REPT(" ",100)),100))
Резюме
Чтобы получить последнее слово из текстовой строки, вы можете использовать формулу, основанную на функциях ОБРЕЗАТЬ, ПОДСТАВИТЬ, ВПРАВО и ПОВТОР. В показанном примере формула 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))
Это нормализует все пробелы до запуска основной логики.