Формула Excel: получить последнее слово -

Содержание

Общая формула

=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))

Это нормализует все пробелы до запуска основной логики.

Хорошие ссылки

Хорошее объяснение на MrExcel.com Т. Валко (Бифф)

Интересные статьи...