Dieser ist getestet und funktioniert (basierend auf Brads ursprünglichem Beitrag):
=RIGHT(A1,LEN(A1)-FIND("|",SUBSTITUTE(A1," ","|",
LEN(A1)-LEN(SUBSTITUTE(A1," ","")))))
Wenn Ihre ursprünglichen Zeichenfolgen eine Pipe enthalten könnten "|" Zeichen, dann ersetzen Sie beide oben durch ein anderes Zeichen, das nicht in Ihrer Quelle erscheint. (Ich vermute, Brads Original war kaputt, weil ein nicht druckbares Zeichen in der Übersetzung entfernt wurde).
Bonus: Wie es funktioniert (von rechts nach links):
LEN(A1)-LEN(SUBSTITUTE(A1," ",""))
- Anzahl der Leerzeichen in der ursprünglichen Zeichenfolge
SUBSTITUTE(A1," ","|", ... )
- Ersetzt nur das letzte Leerzeichen durch a |
FIND("|", ... )
- Ermittelt die absolute Position des ersetzten |
(das war das letzte Leerzeichen)
Right(A1,LEN(A1) - ... ))
- Gibt danach alle Zeichen zurück|
BEARBEITEN: Um den Fall zu berücksichtigen, in dem der Quelltext keine Leerzeichen enthält, fügen Sie am Anfang der Formel Folgendes hinzu:
=IF(ISERROR(FIND(" ",A1)),A1, ... )
Jetzt die gesamte Formel erstellen:
=IF(ISERROR(FIND(" ",A1)),A1, RIGHT(A1,LEN(A1) - FIND("|",
SUBSTITUTE(A1," ","|",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))))
Oder Sie können die =IF(COUNTIF(A1,"* *")
Syntax der anderen Version verwenden.
Wenn die ursprüngliche Zeichenfolge möglicherweise ein Leerzeichen an der letzten Position enthält, fügen Sie eine Trimmfunktion hinzu, während Sie alle Leerzeichen zählen: Machen Sie die Funktion wie folgt:
=IF(ISERROR(FIND(" ",B2)),B2, RIGHT(B2,LEN(B2) - FIND("|",
SUBSTITUTE(B2," ","|",LEN(TRIM(B2))-LEN(SUBSTITUTE(B2," ",""))))))