Formuła programu Excel: pobierz ostatnie słowo -

Formuła ogólna

=TRIM(RIGHT(SUBSTITUTE(text," ",REPT(" ",100)),100))

Podsumowanie

Aby uzyskać ostatnie słowo z ciągu tekstowego, możesz użyć formuły opartej na funkcjach TRIM, SUBSTITUTE, RIGHT i REPT. W pokazanym przykładzie formuła w C6 to:

=TRIM(RIGHT(SUBSTITUTE(B6," ",REPT(" ",100)),100))

Co zwraca słowo „czas”.

Wyjaśnienie

Ta formuła jest interesującym przykładem podejścia „brutalnej siły”, które wykorzystuje fakt, że TRIM usunie dowolną liczbę wiodących spacji.

Pracując od wewnątrz, używamy funkcji SUBSTITUTE, aby znaleźć wszystkie spacje w tekście i zamieniamy każdą spację na 100 spacji:

SUBSTITUTE(B6," ",REPT(" ",100))

Na przykład w przypadku ciągu tekstowego „jeden dwa trzy” wynik będzie wyglądał następująco:

one----------two----------three

Z łącznikami reprezentującymi spacje w celu zwiększenia czytelności. Pamiętaj, że między każdym słowem będzie 100 spacji.

Następnie funkcja PRAWO wyodrębnia 100 znaków, zaczynając od prawej strony. Wynik będzie wyglądał następująco:

-------three

Na koniec funkcja TRIM usuwa wszystkie wiodące spacje i zwraca ostatnie słowo.

Uwaga: arbitralnie używamy 100, ponieważ powinna to być wystarczająco duża liczba, aby obsłużyć bardzo długie słowa. Jeśli masz jakąś dziwną sytuację z bardzo długimi słowami, zwiększ tę liczbę w razie potrzeby.

Obsługa niespójnych odstępów

Jeśli tekst, z którym pracujesz, ma niespójne odstępy (tj. Dodatkowe spacje między słowami, dodatkowe spacje początkowe lub końcowe itp.) Ta formuła nie będzie działać poprawnie. Aby poradzić sobie z tą sytuacją, dodaj dodatkową funkcję TRIM wewnątrz funkcji zastępczej w następujący sposób:

=TRIM(RIGHT(SUBSTITUTE(TRIM(B6)," ",REPT(" ",100)),100))

To znormalizuje wszystkie przestrzenie przed uruchomieniem głównej logiki.

Dobre linki

Miłe wyjaśnienie na MrExcel.com autorstwa T. Valko (Biff)

Interesujące artykuły...