Herbers Excel-Forum - das Archiv
SVERWEIS Suchkriterium
Betrifft: SVERWEIS Suchkriterium
von: Michael Engelhardt
Geschrieben am: 03.12.2003 11:16:32
Hallo Zusammen,
eine Frage zum SVERWEIS. Wie kann ich dem SVERWEIS sagen, das sein Suchkriterium größer Null sein soll.
Gruß
Michael
Betrifft: Nachfrage
von: Günther Oppold
Geschrieben am: 03.12.2003 11:39:08
Hi Michael,
sag doch mal genauer:
- woher Dein Suchkriterium stammt (Zellbezug oder Berechnung?)
- welche Werte dort drinstehen können
- mit welchen Werten verglichen werden soll.
Günther
Betrifft: Hab ein Beispiel angefügt
von: Michael Engelhardt
Geschrieben am: 03.12.2003 11:58:19
Hallo Günther,
mein Ergebnis sollte sein das der Text aus B in eine neue Zeile eingefügt wird (hier G)wenn das Formelergebniss aus A größer Null ist.
Ich dachte, das könnte mit einem SVERWEIS gelöst werden, wenn man im Suchkriterium nicht auf eine Zelle referenziert oder eine abs. Zahl eingibt sondern einfach sagt Suchkriterium größer Null und somit ordne den Text aus B in Spalte G.
Die Texte zu denen in A eine Null steht interessieren nicht. Die Lösung muss aber flexibel sein, da der Bereich Cx:Ex sich ändern kann. Die Werte kommen aus einer OLAP-Datenbank. Deshalb prüfe ich mit KGRÖSSTE ob im Bereich C1:E1 usw. Werte enthalten sind.
https://www.herber.de/bbs/user/2287.xls
Gruß
Michael
Betrifft: AW: Hab ein Beispiel angefügt
von: Günther Oppold
Geschrieben am: 03.12.2003 12:11:46
Michael,
dies erreichst Du mit einer verschachtelten Index-Array-Formel.
Gib folgende Formel in G2 ein:
=INDEX(B:B;KKLEINSTE(WENN(A$1:A$6>0;ZEILE($1:$6));ZEILE()-1))
und beende die Eingabe mit Strg+Umsch+Enter. Dadurch werden geschwungene Klammern am Anfang und Ende der Formel erzeugt (=ARRAY-Funktion)
also:
{=INDEX(B:B;KKLEINSTE(WENN(A$1:A$6>0;ZEILE($1:$6));ZEILE()-1))}
diese Formel kannst Du nach unten ziehen
Günther
Betrifft: AW: Hab ein Beispiel angefügt
von: Michael Engelhardt
Geschrieben am: 03.12.2003 12:17:59
Hallo Günther,
vielen Dank das ist genau das was ich haben wollte. Ganz ehrlich gesagt ich verstehe nicht was die Formel macht, aber das Ergebnis ist das Richtige.
VIELEN DANK!
Gruß
Michael
P.S. Wo kann ich mehr über Array-Formeln lernen. Die Beherschung scheint sehr nützlich.
Betrifft: AW: Hab ein Beispiel angefügt
von: Günther Oppold
Geschrieben am: 03.12.2003 12:46:04
Hi Michael,
zur ARRAY-Funktion: schau mal in der Online-Hilfe unter "Matrix-Funktion"
meine Formel:
Index sucht aus einer Matrix (in meinem Beispiel B:B) eine Zeile (durch kkleinste berechnet) und eine Spalte (wenn die Matrix nur aus 1 Spalte besteht, braucht nichts eigegeben zu werden)
Kkleinste sucht von A1:A6 welche Zelle einen Wert größer 0 hat und weist der Formel die gefundene Zeile (Zeile$1:$6) als Wert zu. Als Rang wird der Wert aktive Zeile -1 berechnet.
Da die kkleinste-Formel die Spalte A von oben nach unten durchforsten und prüfen muss ob die Bedingung >0 zutrifft, ist die Eingabe als ARRAY-Funktion notwendig.
Ich hoffe dies ist einigermaßen verständlich geschrieben
Günther
Betrifft: Nochmals Danke !!!
von: Michael Engelhardt
Geschrieben am: 03.12.2003 13:05:48
Danke !