Daten Transformieren: Letztes Wort mit einer Formel finden

Oft bekommen wir Daten aus Systemen die wir weiter verarbeiten müssen. Da kommt es manchmal auch vor dass wir Informationen die eigentlich getrennt und in separaten Zellen bräuchten in einer Zelle als ein langer Text erscheinen.

Im heutigen Beispiel gehen wir davon aus dass wir es mit solchen Informationen zu tun haben und lediglich das letzte Wort/den letzten Abschnitt haben möchten!

Ein Beispiel aus dem Alltag:

Kontakt Person: M. Ulrich, Tel. +41 078 132 45 89 Alte Schulgasse 99 8001 Zürich info@beispiel.ch

Wie man sich unschwer vorstellen kann, währen es nützlicher gewesen man hätte diese Infos auf verschiedene Zellen getrennt bekommen. Da sich die anzahl Zeichen einer Adresse jeweils unterscheiden, können wir in diesem Fall auch nicht schnell mit “Text-in-Spalten” drüberfahren. Aber da es uns genügt die Email Adresse (also das letze Wort) zu finden, können wir es mit folgender Formel bewerkstelligen:

=GLÄTTEN(RECHTS(WECHSELN(GLÄTTEN(B2); " "; WIEDERHOLEN(" "; 99)); 99))

Was die Formel macht in Einzelschritten:

In diesem Beispiel wird die WIEDERHOLEN() und GLÄTTEN() und RECHTS() Formeln clever kombiniert! Wer sich das Beispiel gleich in der Datei anschauen möchte kann dies hier tun:

Die Formel versteht man am besten wenn man von innen nach außen Arbeitet:

=GLÄTTEN(B2)

Mit der GLÄTTEN() Formel werden alle überflüssigen Leerzeichen im text eliminiert, so dass jeweils nur maximal ein Leerzeichen zwischen jedem Wort steht.

=WIEDERHOLEN(" "; 99)

Mit dieser WIEDERHOLEN() Formel erstellen wir eine sehr lange Zeichenkette von Leerzeichen! 99 an einander gereihte Leerzeichen um genau zu sein. Weshalb?

=WECHSELN(C6); " "; C8)

Damit wir im Text den wir durch GLÄTTEN bereinigt haben, nun alle einzelnen Leerzeichen, mit der WECHSELN() Formel, die neue super lange Leerzeichen-kette ersetzen können!

Unser ursprünglicher Text wächst damit von einer Gesamtlänge von 97 Zeichen auf insgesamt 1567 Zeichen an! Eine Monstrum dass wir in einer normalen Zelle gar nicht mehr anschauen können.

Und genau das ist der Trick an dieser ganzen Formel… wir reißen alle Wörter so weit aus einander, dass wir jetzt…

Das Resultat:

… einfach noch die letzten 99 Zeichen von Rechts holen da wir sicher sein können dass es vor dem letzten Wort nichts außer Leerzeichen haben wird!

=RECHTS(WECHSELN(GLÄTTEN(B2); " "; WIEDERHOLEN(" "; 99)); 99)
=RECHTS(C10; 99)

Das Resultat nach diesem muss nun nur noch einmal “gesäubert” von überflüssigen Leerzeichen mit GLÄTTEN() …

=GLÄTTEN(C12)

Das Resultat ist nun das letzte Wort in der Zeichenkette und unser endgültiges Resultat:

info@beispiel.ch