| home |  
  

   © 2005 by Friedel Schmidt •  E-Mail  •                      Top  

   | impressum | feedback | home |  


Inhaltsverzeichnis

Suchen

Links
  

Anzahl verschiedener Einträge in Bereich ermitteln
Versionen: Excel 97, 2000 und 2002

Eine Liste mit Hilfe einer Arrayformel analysieren. Die Daten, die ausgewertet werden sollen, stehen im Bereich A3:A100. In der Zelle, in der die Anzahl unterschiedlicher Einträge ausgegeben werden soll, folgende Formel eingeben:

=SUMME(1/ZÄHLENWENN(A3:A100;A3:A100))

Die Eingabe aber nicht einfach mit Return abschließen , sondern Strg+Umschalt+Return drücken (Tastenkombination zur Eingabe einer Arrayformel. Excel trägt den Ausdruck daraufhin mit geschweiften Klammern ein), sodass in der Bearbeitungszeile folgendes steht:

{=SUMME(1/ZÄHLENWENN(A3:A100;A3:A100))}

Die ZÄHLENWENN-Funktion vergleicht den zu analysierenden Bereich mit sich selbst, sodass man ein Array erhält, in dem die Häufigkeiten jedes einzelnen Eintrags stehen. Wenn ein Eintrag zum Beispiel fünf Mal auftaucht, steht an jeder Position dieses Eintrags eine "5". Ein Wert, der nur einmal vorkommt, erhält das ZÄHLENWENN-Ergebnis "1".

Indem man 1 durch die einzelnen Häufigkeiten teilt, weist man den Arraywerten gewissermaßen eine Wertigkeit zu. Bei einem ZÄHLENWENN-Ergebnis von "5" ist beispielsweise jeder einzelne nur ein Fünftel wert und alle zusammen ergeben "1". Die Summe aller Wertigkeiten entspricht somit der Anzahl der unterschiedlichen Listeneinträge.

Die Formel hat jedoch einen Haken: sie funktioniert nur, wenn der zu analysierende Bereich keine leeren Zellen enthält. Dann liefert ZÄHLENWENN den Wert "0", sodass es im Ergebnisarray zu einer Division durch Null (Fehler #DIV/0!) kommt, was auch als Gesamtergebnis der oben genannten Arrayformel ausgegeben wird.

Diesen Fehler kann man mit einer Erweiterung der ersten Formel abfangen:

=SUMME(1/WENN(ZÄHLENWENN(A3:A100;A3:A100)=0;1;ZÄHLENWENN( A3:A100;A3:A100)))-ANZAHLLEEREZELLEN(A3:A100)
Abschluß als Arrayformel (Strg+Umschalt+Return) !

Mit der Formel schließt man eine Division durch Null aus. Im Ergebnisarray erscheint aber an jeder Leerzellenposition ein Wert von "1". Da diese Zellen aber gar nicht gezählt werden sollen, werden am Ende die Anzahl der leeren Zellen des Bereichs wieder abgezogen.


Um die Anzahl verschiedener Einträge in einem gefilterten Bereich zu ermitteln, bedarf es etwas mehr Aufwand.