[imgr=logo-470.png]logo-80.png?nocache=1309248315895[/imgr]In diesem Artikel zu Microsofts Excel werde ich ihnen heute zeigen, wie man mit einer einzigen Formel die Anzahl an verschiedenen Zeichen pro Zelle bekommen kann. Dabei können sie auswählen, ob Groß- und Kleinschreibung beachtet werden soll oder nicht.

In diesem Artikel hier habe ich ihnen schon einmal gezeigt, wie Sie es schaffen, dass Excel alle Zeichen ausgibt, die in einer Zelle vorkommen. Jedoch wurde in diesem Artikel nur erklärt, wie man es schafft, dass die Zeichen aufgelistet werden. Wie man die Anzahl von ihnen bekommt, wurde dabei nicht angesprochen. Das möchte ich jetzt in diesem Artikel nachholen und ihnen zeigen, wie man das mit einer Formel ganz einfach schafft. Dabei können Sie ja nachdem, was Sie möchte, auch zwischen zwei Formeln auswählen, bei denen die eine einen Unterschied zwischen Groß- und Kleinschreibung macht, und die andere Groß- und Kleinbuchstaben als verschiedene Zeichen ansieht.

Beginn:

Zu aller erst müssen Sie in ihrer Tabelle die Zelle eingeben, in der die Anzahl an Zeichen gezählt werden soll. Nehmen Sie dafür am besten die Zelle A1. Hier geben Sie nun einen String ein, der wirklich alle möglichen Zeichen enthalten darf bzw. soll u die Funktion schöner darzustellen. Auch Problemzeichen, wie „~“, „*“ oder „?“ können Sie verwenden wenn Sie die Wirkungsweise der beiden Formeln genauer untersuchen wollen. Haben Sie ihren String eingegeben, so schauen Sie nach, ob ihre Tabelle nun ähnlich wie die im Screenshot aussieht. Ist das der Fall, so gehen Sie zum nächsten Schritt weiter, indem Sie die erste der beiden Formeln kennenlernen werden.

(Zur Darstellung in Originalgröße Abbildungen anklicken)
01-excel-formeln-anzahl-an-unterschiedlichen-zeichen-in-einer-zelle-zaehlen-beginn-80.png?nocache=1308930267682

Anzahl an unterschiedlichen Zeichen in einer Zelle ausgeben (mit Einschränkungen):

Nachdem Sie ihren String eingetragen haben, werde ich ihnen nun die erste Formel zeigen, mit der man die Anzahl an Zeichen in einer Zelle ausgeben kann. Diese Formel besitzt aber Einschränkungen. Mit einem Leerzeichen geht die Formel zwar auch problemlos um, jedoch bereitet ihr Groß- und Kleinschreibung Schwierigkeiten. Diese Formel behandelt Großbuchstaben genauso wie Kleinbuchstaben und zählt „a“ also genauso wie „A“. Aber nicht nur bei der Groß- und Kleinschreibung zeigt die Formel Schwächen, sondern auch bei den „Problemzeichen“. Auf die Zeichen „*“ und „?“ reagiert die Formel nur, wenn Sie an der ersten Stelle stehen, auf dieses Zeichen „~“ reagiert sie gar nicht und zählt es auch nicht. Möchten Sie diese Formel trotzdem benutzen, so geben Sie in eine freie Zelle, wie zum Beispiel B1 die folgende Formel ein:

=SUMME((VERGLEICH(TEIL(A1;ZEILE(1:1000);1);TEIL(A1;ZEILE(1:1000);1);0)=ZEILE(1:1000))*1)-1

Haben Sie die Formel eingegeben, so wird ihnen auch nicht umgehend das richtige Ergebnis geliefert. Der Grund dafür ist, dass die Formel eine Matrixformel ist. Also müssen Sie wieder die – ihnen vielleicht schon bekannten – drei Schritte durchführen, die nötig sind, wenn man eine Matrixformel richtig ausführen möchte. Klicken Sie zuerst nochmals die Zelle an, in der die Formel steht. In meinem Fall war das B1. Haben Sie das gemacht, so klicken Sie nun oben in die Bearbeitungszeile der Formel. Abschließend drücken Sie noch die Tasten STRG+SHIFT+Enter. Nun erscheint in der Zelle der richtige Ausgabewert, in meinem Fall war das die Zahl „4“. Gezählt wurden in meinem Beispiel nur die Zeichen „A“ bzw. „a“, je nachdem wie man es sieht, „b“, „c“ und das Leerzeichen. Die Gründe dafür sehen Sie weiter oben. Aber neben dem korrekten Ausgabewert hat sich nach dem Drücken von STRG+SHIFT+Enter auch die Formel verändert. In der typischen Matrixschreibweise sieht diese nun so aus:

{=SUMME((VERGLEICH(TEIL(A1;ZEILE(1:1000);1);TEIL(A1;ZEILE(1:1000);1);0)=ZEILE(1:1000))*1)-1}

Haben Sie den Text nicht in Zelle A1 geschrieben, so ändern Sie den Zellbezug in der Formel einfach entsprechend ab. Zu dieser Formel kann man abschließend sagen, dass man sie nur verwenden sollte, wenn man weiß, dass in seiner Zelle die Zeichen „*“, „?“ und „~“ nicht auftreten bzw. nur an einer gewissen Position und dass man möchte, dass zwischen Groß- und Kleinschreibung kein Unterschied mehr gemacht wird.

02-excel-formeln-anzahl-an-unterschiedlichen-zeichen-in-einer-zelle-zaehlen-einschraenkung-470.png?nocache=1308930287661

Anzahl an unterschiedlichen Zeichen in einer Zelle ausgeben (ohne Einschränkungen):

Nachdem Sie nun die Formel mit Einschränkungen kennengelernt haben, werde ich ihnen nun zeigen, wie die Formel lautet, damit wirklich alle Zeichen unabhängig von ihrer Position gezählt werden. Löschen Sie dazu erst einmal wieder den aktuellen Inhalt der Zelle B1 und geben Sie anschließend die folgende Formel ein:

=SUMMENPRODUKT(1/(LÄNGE(A1)-LÄNGE(WECHSELN(A1;TEIL(A1;ZEILE(INDIREKT("1:"&LÄNGE(A1)));1);))))

Diese Formel ist im Gegensatz zu der anderen keine Matrixformel. Das bedeutet, dass ihnen die Formel umgehend das richtige Ergebnis liefert, ohne dass Sie vorher die drei Schritte befolgt haben, wie Sie es bei der Matrixformel vorhin machen mussten. Wie schon gesagt, reagiert diese Formel wirklich auf alle verschiedene Zeichen. Deshalb liefert die Formel bei mir auch das Ergebnis „8“. Diesmal werden folgende Zeichen gezählt: „~“, „A“, „a“, „b“, „c“, „*“, „?“ und das Leerzeichen. Haben Sie ihren zu untersuchenden String nicht in die Zelle A1 geschrieben, so ändern Sie den Zellbezug in der Formel einfach entsprechend ab.

03-excel-formeln-anzahl-an-unterschiedlichen-zeichen-in-einer-zelle-zaehlen-komplett-470.png?nocache=1308930305501

Nun wissen Sie über die zwei Formeln Bescheid, mit denen man die Anzahl an verschiedenen Zeichen pro Zelle ausgeben kann. Dabei kommt es ganz auf ihre Ansprüche an, welche Formel Sie benutzen. Ich würde jedoch die zweite Formel benutzen, da sie wirklich alle Zeichen ausgibt, was ja auch die eigentliche Aufgabenstellung war.