Seite 1 von 1

Suche elegantere Lösung: Anzahl d. verschiedenen Ergebnisse einer Spalte dynamisch anzeigen lassen

Verfasst: So, 18.10.2015 09:07
von StefanB
Guten morgen zusammen

Habe eine Spalte mit Zahlen zw. 1 und 19. Ergebnisse kommen mehrfach vor und diese Zahlen/Ergebnisse werden aus diversen Schritten vorher erzeugt. Beispiel:
5
5
11
1
5
7
11
2
Jetzt würde ich mir gerne dynamisch eine Liste ausgeben lassen aller verschiedener Zahlen. Für das Obere Beispiel wäre dass dann folgendes:
1
2
5
7
11
Daraus würd ich dann weitere Ergebnisse basteln.

Habs mit ne wunderschön verschatelten Wenn-Funktion in Kombi mit Zählenwenn versucht, die auch funktioniert, aber halt sehr unelegant ist:

Code: Alles auswählen

=WENN(UND(ZÄHLENWENN(F$32:F$132;1)>0;MAX(B$9:B9)<1);1;
WENN(UND(ZÄHLENWENN(F$32:F$132;2)>0;MAX(B$9:B9)<2);2;
WENN(UND(ZÄHLENWENN(F$32:F$132;3)>0;MAX(B$9:B9)<3);3;
WENN(UND(ZÄHLENWENN(F$32:F$132;4)>0;MAX(B$9:B9)<4);4;
WENN(UND(ZÄHLENWENN(F$32:F$132;5)>0;MAX(B$9:B9)<5);5;
WENN(UND(ZÄHLENWENN(F$32:F$132;6)>0;MAX(B$9:B9)<6);6;
WENN(UND(ZÄHLENWENN(F$32:F$132;7)>0;MAX(B$9:B9)<7);7;
WENN(UND(ZÄHLENWENN(F$32:F$132;8)>0;MAX(B$9:B9)<8);8;
WENN(UND(ZÄHLENWENN(F$32:F$132;9)>0;MAX(B$9:B9)<9);9;
WENN(UND(ZÄHLENWENN(F$32:F$132;10)>0;MAX(B$9:B9)<10);10;
WENN(UND(ZÄHLENWENN(F$32:F$132;11)>0;MAX(B$9:B9)<11);11;
WENN(UND(ZÄHLENWENN(F$32:F$132;12)>0;MAX(B$9:B9)<12);12;
WENN(UND(ZÄHLENWENN(F$32:F$132;13)>0;MAX(B$9:B9)<13);13;
WENN(UND(ZÄHLENWENN(F$32:F$132;14)>0;MAX(B$9:B9)<14);14;
WENN(UND(ZÄHLENWENN(F$32:F$132;15)>0;MAX(B$9:B9)<15);15;
WENN(UND(ZÄHLENWENN(F$32:F$132;16)>0;MAX(B$9:B9)<16);16;
WENN(UND(ZÄHLENWENN(F$32:F$132;17)>0;MAX(B$9:B9)<17);17;
WENN(UND(ZÄHLENWENN(F$32:F$132;18)>0;MAX(B$9:B9)<18);18;
WENN(UND(ZÄHLENWENN(F$32:F$132;19)>0;MAX(B$9:B9)<19);19;"")))))))))))))))))))
Der Code in die erste Zelle (B10) und dann einfach runterziehen, wie gesagt, funktioniert gut, aber is halt ned wirklich "elegant".

Vorschläge wie man's besser machen könnte?

Re: Suche elegantere Lösung: Anzahl d. verschiedenen Ergebnisse einer Spalte dynamisch anzeigen lassen

Verfasst: So, 18.10.2015 11:14
von Karolus
Hallo
Nimm halt mal in B10:

Code: Alles auswählen

=MAX(F$32:F$132)
ab B11 dann:

Code: Alles auswählen

=MAX((F$32:F$132)*(F$32:F$132<B10))
letztere dann per `strg+shift+enter` als Matrixformel bestätigen (oder der entsprechenden Option im Formelassistenten), und bei gedrückter `strg`-taste nach unten ziehen

Re: Suche elegantere Lösung: Anzahl d. verschiedenen Ergebnisse einer Spalte dynamisch anzeigen lassen

Verfasst: So, 18.10.2015 12:41
von Axel Richter
Hallo,

siehe: http://www.excelformeln.de/formeln.html?welcher=194. Da gibt es für Zahlen Formeln, die ohne Array-Formeln auskommen.

In B10:

Code: Alles auswählen

=MIN(F$32:F$132)
Ab B11 abwärts:

Code: Alles auswählen

=KGRÖSSTE(F$32:F$132;ZÄHLENWENN(F$32:F$132;">"&B10))
Beispiel siehe Anlage.

viele Grüße

Axel