Excel-Formel: Anzahl der Wörter in einer Zelle zählen -

Inhaltsverzeichnis

Generische Formel

=LEN(TRIM(A1))-LEN(SUBSTITUTE(A1," ",""))+1

Zusammenfassung

Um die Gesamtzahl der Wörter in einer Zelle zu zählen, können Sie mithilfe der TRIM-Funktion eine Formel verwenden, die auf den Funktionen LEN und SUBSTITUTE basiert. In dem gezeigten Beispiel lautet die Formel in Zelle C5, die nach unten kopiert wurde:

=LEN(TRIM(B5))-LEN(SUBSTITUTE(B5," ",""))+1

Die Formel gibt die Wortanzahl in Zelle B5 zurück.

Erläuterung

Excel verfügt nicht über eine spezielle Funktion zum Zählen von Wörtern in einer Zelle. Mit ein wenig Einfallsreichtum können Sie eine solche Formel jedoch mithilfe der Funktionen SUBSTITUTE und LEN mithilfe von TRIM erstellen, wie im Beispiel gezeigt. Auf hoher Ebene verwendet diese Formel die LEN-Funktion, um die Anzahl der Zeichen in der Zelle mit und ohne Leerzeichen zu zählen, und verwendet dann die Differenz, um die Wortanzahl zu ermitteln. Dies funktioniert, da die Wortanzahl gleich der Anzahl der Leerzeichen + 1 ist, solange zwischen jedem Wort ein Leerzeichen steht.

Der erste Teil der Formel zählt die Zeichen in Zelle B5, nachdem zusätzlicher Platz entfernt wurde:

=LEN(TRIM(B5)) // normalize space, count characters

In LEN entfernt die TRIM-Funktion zuerst alle zusätzlichen Leerzeichen zwischen Wörtern oder am Anfang oder Ende des Textes. Dies ist wichtig, da zusätzliche Leerzeichen die Wortanzahl verringern. In diesem Fall gibt es keine zusätzlichen Leerzeichen, sodass TRIM den Originaltext direkt an die LEN-Funktion zurückgibt, die 30 zurückgibt:

LEN("All Quiet on the Western Front") // returns 30

An diesem Punkt haben wir:

=30-LEN(SUBSTITUTE(B5," ",""))+1

Als nächstes verwenden wir die SUBSTITUTE-Funktion, um alle Leerzeichen aus dem Text zu entfernen:

SUBSTITUTE(B5," ","") // strip all space

Hinweis SUBSTITUTE ist so konfiguriert, dass nach einem Leerzeichen ("") gesucht und durch eine leere Zeichenfolge ("") ersetzt wird. Standardmäßig ersetzt SUBSTITUTE alle Leerzeichen. Das Ergebnis wird direkt an die LEN-Funktion übergeben, die die Anzahl zurückgibt:

LEN("AllQuietontheWesternFront") // returns 25

LEN gibt 25 zurück, die Anzahl der verbleibenden Zeichen, nachdem das gesamte Leerzeichen entfernt wurde. Wir können die Formel jetzt vereinfachen, um:

=30-25+1 // returns 6

Dies gibt 6 als Endergebnis zurück, die Anzahl der Wörter in Zelle B5.

Umgang mit leeren Zellen

Die Formel im Beispiel gibt 1 zurück, auch wenn eine Zelle leer ist oder nur Leerzeichen enthält. Dies geschieht, weil wir bedingungslos 1 hinzufügen, nachdem wir Leerzeichen zwischen Wörtern gezählt haben. Um dieses Problem zu vermeiden, können Sie die Formel wie folgt anpassen:

=LEN(TRIM(B5))-LEN(SUBSTITUTE(B5," ",""))+(LEN(TRIM(B5))>0)

Beachten Sie, dass wir 1 durch diesen Ausdruck ersetzt haben:

LEN(TRIM(B5))>0

Dieser Code schneidet zuerst B5 ab und überprüft dann die Länge. Wenn B5 Text enthält, gibt LEN eine positive Zahl zurück und der Ausdruck gibt TRUE zurück. Wenn B5 leer ist oder nur Leerzeichen enthält, gibt TRIM eine leere Zeichenfolge ("") an LEN zurück. In diesem Fall gibt LEN Null (0) und der Ausdruck FALSE zurück. Der Trick besteht darin, dass TRUE und FALSE bei jeder mathematischen Operation mit 1 bzw. Null bewertet werden. Infolgedessen fügt der Ausdruck nur dann 1 hinzu, wenn sich in B5 Text befindet. Andernfalls wird Null (0) hinzugefügt. Diese Logik könnte auch mit der IF-Funktionsanweisung wie folgt geschrieben werden:

IF(LEN(TRIM(B5))>0,1,0)

und das Ergebnis wäre das gleiche. Der obige Ausdruck ist einfach kompakter.

Interessante Beiträge...