Excel-Formel: Text auf n Wörter zuschneiden -

Inhaltsverzeichnis

Generische Formel

=LEFT(txt,FIND("#",SUBSTITUTE(txt," ","#",n))-1)

Zusammenfassung

Um Text auf eine bestimmte Anzahl von Wörtern zu kürzen, können Sie eine Formel verwenden, die auf den Funktionen SUBSTITUTE, FIND und LEFT basiert. Im gezeigten Beispiel lautet die Formel in xxx:

=LEFT(B5,FIND("#",SUBSTITUTE(B5," ","#",C5))-1)

Erläuterung

Wir brauchen eine Möglichkeit, Text an einer bestimmten Markierung zu teilen, die einer bestimmten Anzahl von Wörtern entspricht. Excel verfügt nicht über eine integrierte Funktion zum Parsen von Text nach Wörtern. Verwenden Sie daher das Argument "instance" der SUBSTITUTE-Funktion, um ein "n-ten Leerzeichen" durch das Nummernzeichen (#) zu ersetzen, und verwenden Sie dann FIND und LEFT, um alle zu verwerfen Text nach dem Marker.

SUBSTITUTE arbeitet von innen nach außen und ersetzt das n-te Vorkommen eines Leerzeichens, wobei n aus Spalte C stammt, der Text aus Spalte B stammt und "#" fest codiert ist.

=SUBSTITUTE(B5," ","#",C5) =SUBSTITUTE("The cat sat on the mat."," ","#",3) ="The cat sat#on the mat."

Die resultierende Zeichenfolge wird an die FIND-Funktion zurückgegeben, die so konfiguriert ist, dass sie nach "#" sucht.

=FIND("#","The cat sat#on the mat.)

Da das "#" das 12. Zeichen im Text ist, gibt FIND 12 zurück. Wir möchten das Leerzeichen selbst nicht einschließen, also subtrahieren wir 1:

=LEFT(B5,12-1) =LEFT(B5,11)

LINKS gibt das Endergebnis aus der Formel "Die Katze saß" zurück.

Hinweis: Das Nummernzeichen ("#") ist beliebig und kann durch jedes Zeichen ersetzt werden, das nicht im Text erscheint.

Füge Elipsen oder andere Zeichen hinzu

Verwenden Sie die folgende Verkettung, um am Ende des zugeschnittenen Textes "…" hinzuzufügen:

=LEFT(B5,FIND("#",SUBSTITUTE(B5," ","#",C5))-1)&"… "

Sie können "…" durch alles ersetzen, was Sie möchten.

Interessante Beiträge...