Das letzte Wort

Ein auf den ersten Blick einfaches Problem mit einer nicht offensichtlichen Lösung: extrahieren Sie das letzte Wort aus einer Textzeile. Nun, oder im allgemeinen Fall das letzte Fragment, getrennt durch ein bestimmtes Trennzeichen (Leerzeichen, Komma usw.). Mit anderen Worten, es ist notwendig, eine Rückwärtssuche (vom Ende zum Anfang) in der Zeichenfolge von a zu implementieren angegebenen Zeichen und extrahieren Sie dann alle Zeichen rechts davon .

Sehen wir uns die traditionell verschiedenen Möglichkeiten an, aus denen Sie wählen können: Formeln, Makros und Power Query.

Methode 1. Formeln

Um das Wesen und die Mechanik der Formel besser verständlich zu machen, fangen wir etwas weiter weg an. Lassen Sie uns zunächst die Anzahl der Leerzeichen zwischen den Wörtern in unserem Ausgangstext auf beispielsweise 20 Stück erhöhen. Dies können Sie mit der Ersetzungsfunktion tun. ERSATZ (ERSATZ) und die Funktion, ein bestimmtes Zeichen N-mal zu wiederholen – WIEDERHOLEN (WIEDERHOLEN):

Das letzte Wort

Nun schneiden wir mit der Funktion 20 Zeichen vom Ende des resultierenden Textes ab RECHTS (RECHT):

Das letzte Wort

Es wird wärmer, oder? Es bleibt übrig, zusätzliche Leerzeichen mit der Funktion zu entfernen TRIMMEN (TRIMMEN) und das problem wird gelöst:

Das letzte Wort

In der englischen Version sieht unsere Formel so aus:

=TRIM(RIGHT(SUBSTITUTE(A1;» «;REPT(» «;20));20))

Ich hoffe, es ist klar, dass es im Prinzip nicht notwendig ist, genau 20 Leerzeichen einzufügen – jede Zahl reicht, solange sie länger ist als die Länge des längsten Wortes im Ausgangstext.

Und wenn der Quelltext nicht durch ein Leerzeichen, sondern durch ein anderes Trennzeichen (z. B. durch ein Komma) getrennt werden soll, muss unsere Formel leicht korrigiert werden:

Das letzte Wort

Methode 2. Makrofunktion

Die Aufgabe, das letzte Wort oder Fragment aus dem Text zu extrahieren, kann auch mithilfe von Makros gelöst werden, nämlich durch das Schreiben einer umgekehrten Suchfunktion in Visual Basic, die das tut, was wir brauchen – nach einem bestimmten Teilstring in einem String in der entgegengesetzten Richtung suchen – aus das Ende zum Anfang.

Drücken Sie die Tastenkombination Andere+F11 oder Taste Visual Basic Tab Entwickler (Entwickler)um den Makroeditor zu öffnen. Fügen Sie dann über das Menü ein neues Modul hinzu Einfügen – Modul und kopiere dort folgenden Code:

 Funktion LastWord(txt As String, Optional delim As String = " ", Optional n As Integer = 1) As String arFragments = Split(txt, delim) LastWord = arFragments(UBound(arFragments) - n + 1) End Function  

Jetzt können Sie die Arbeitsmappe speichern (in einem makrofähigen Format!) und die erstellte Funktion in der folgenden Syntax verwenden:

=LetztesWort(txt ; Trennzeichen ; n)

woher

  • txt – Zelle mit Quelltext
  • delim — Trennzeichen (Standard — Leerzeichen)
  • n – welches Wort soll am Ende extrahiert werden (standardmäßig – das erste am Ende)

Das letzte Wort

Bei zukünftigen Änderungen im Quelltext wird unsere Makrofunktion wie jede Standard-Excel-Tabellenfunktion on-the-fly neu berechnet.

Methode 3. Power-Abfrage

Power Query ist ein kostenloses Add-on von Microsoft zum Importieren von Daten in Excel aus fast jeder Quelle und zum anschließenden Umwandeln der heruntergeladenen Daten in eine beliebige Form. Die Leistung und Coolness dieses Add-Ins ist so großartig, dass Microsoft alle seine Funktionen standardmäßig in Excel 2016 integriert hat. Für Excel 2010-2013 kann Power Query hier kostenlos heruntergeladen werden.

Unsere Aufgabe, das letzte Wort oder Fragment durch ein bestimmtes Trennzeichen mit Power Query zu trennen, ist sehr einfach gelöst.

Lassen Sie uns zunächst unsere Datentabelle mithilfe von Tastenkombinationen in eine intelligente Tabelle umwandeln. Ctrl+T oder Befehle Startseite – Als Tabelle formatieren (Home — Als Tabelle formatieren):

Das letzte Wort

Dann laden wir die erstellte „intelligente Tabelle“ mit dem Befehl in Power Query Aus Tabelle/Sortiment (Aus Tabelle/Bereich) Tab Datum (wenn Sie Excel 2016 haben) oder auf der Registerkarte Power Query (wenn Sie Excel 2010-2013 haben):

Das letzte Wort

Klicken Sie im sich öffnenden Fenster des Abfrageeditors auf die Registerkarte Transformation (Verwandeln) wähle ein Team Spalte teilen – Nach Trennzeichen (Spalte teilen – Nach Trennzeichen) und dann bleibt das Trennzeichen einzustellen und die Option auszuwählen Trennzeichen ganz rechtsum nicht alle Wörter zu kürzen, sondern nur das letzte:

Das letzte Wort

Nach dem Klicken auf OK das letzte Wort wird in eine neue Spalte getrennt. Die unnötige erste Spalte kann entfernt werden, indem Sie mit der rechten Maustaste auf ihre Überschrift klicken und sie auswählen Entfernen (Löschen). Sie können auch die verbleibende Spalte im Tabellenkopf umbenennen.

Die Ergebnisse können mit dem Befehl wieder in das Blatt hochgeladen werden Home — Schließen und Laden — Schließen und Laden nach … (Home — Schließen & Laden — Schließen & Laden nach…):

Das letzte Wort

Und als Ergebnis erhalten wir:

Das letzte Wort

So – billig und fröhlich, ohne Formeln und Makros, fast ohne die Tastatur zu berühren 🙂

Wenn sich die ursprüngliche Liste in Zukunft ändert, reicht es aus, mit der rechten Maustaste zu klicken oder eine Tastenkombination zu verwenden Ctrl+Andere+F5 aktualisieren Sie unsere Anfrage.


  • Sticky Text in Spalten aufteilen
  • Analysieren und Analysieren von Text mit regulären Ausdrücken
  • Extrahieren der ersten Wörter aus dem Text mit der SUBSTITUTE-Funktion

Hinterlassen Sie uns einen Kommentar