KKLEINSTE mit Bedingungen in INDEX-Funktion
#1
Hallo,

ich habe eine vertikale Liste mit Werten zwischen 3999 und 15999 in der Spalte O (ab O3).
Nun möchte ich mir die Werte in nebenstehenden Spalten weiter unterteilen:
<12.000
>12.000<13.000
>13.000<15.000
>15.000

für <12.000 habe ich folgende Makro-Funktion formuliert, die auch wunderbar funktioniert:
Code:
=WENNFEHLER(INDEX(O$3:O$11;KKLEINSTE(WENN(O$3:O$11<12000;ZEILE($1:$9));ZEILE(P1)));"")

Das gleiche habe ich jetzt für >12.000<13.000 gemacht, aber irgendwie funktioniert der Zusatz mit dem UND in der WENN-Abfrage nicht:
Code:
=WENNFEHLER(INDEX(O$3:O$11;KKLEINSTE(WENN(UND(O$3:O$11>12000;O$3:O$11<13000);ZEILE($1:$9));ZEILE(R1)));"")

Angezeigt wird mir nur der höchste Wert der ursprünglichen Liste (15.100) und sonst nichts.

Wie kann man das lösen? Confused

Danke im Voraus!

Buddha
Top
#2
Hola,


Code:
=WENNFEHLER(INDEX($O$3:$O$11;KKLEINSTE(WENN(($O$3:$O$11>12000)*($O$3:$O$11<=13000);ZEILE($1:$9));ZEILE(A1)));"")

Gruß,
steve1da
Top
#3
Hallo, MakroFunktion..? Du meinst sicher Array-Formel oder MatrixFormel...!?!?!

Deine Formel kann man kürzen, es sei denn du suchst nach der Reiehenfolge des Auftretens.

=KKLEINSTE(WENN(O$3:O$11<12000;$O$3:$O$11);ZEILE(A1)) - mit CSE

Deine Frage betreffend --->

=KKLEINSTE(WENN(($O$3:$O$11>12000)*($O$3:$O$11<13000);$O$3:$O$11);ZEILE(A1))
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Top
#4
hi Steve, dein <= war aber nicht gefragt... Ganz schön gewagt... (!) :21:   :05:   :25:
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Top
#5
Hi Jörg,

bei <13000 und >13000 bin ich halt mal volles Risiko gegangen :D

Gruß
steve
Top
#6
Danke an Jörg und steve, es hat geklappt!

Aber warum kann man hier ein * (Multiplikator) zum Verknüpfen der Bedingungen benutzen? Das habe ich noch nie gesehen...

Funktioniert das immer?
Top
#7
Hallo Buddha,

du hast hier nichts verknüpft, sondern multipliziert. Schau dir mal die einzelnen Terme an:

es kommen bei beiden WENN-Abfragen entweder WAHR oder FALSCH heraus; entsprechend 1 oder 0. Und mit dem entsprechenden Ergebnis multipliziert, hast du wieder ein WAHR oder FALSCH. Das löst dann das erwartete Ergebnis aus.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste