
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.