06.07.2020, 14:39
Hallo Heikoka,
Erklärung der Formeln:
ZEILE(A1) liefert die Zeilennummer der Zelle A1, also die Zahl 1
ZEILE(A1:A5) liefert die Zeilennummern der Zeilen A1-A5, also die Matrix {1, 2, 3, 4, 5 }
der Ausdruck (A1:B5)=C8 vergleicht ob der Inhalt der Zelle C8 mit den einzelnen Zellen des Bereiches A1:B5 identisch ist und liefert eine (zweidimensionale) Zahlenmatrix mit WAHR und FALSCH zurück.
Durch die Multiplikation werden die beiden Matrizen multipliziert, wobei die WAHR als 1 und FALSCH als 0 interpretiert wird.
Das Ergebnis ist dann eine Matrix, die fast nur aus 0en besteht, nur da wo der Name aus C8 gefunden wird, steht in der Matrix die Zeilenzahl.
Und SUMMENPRODUKT summiert dann die einzelnen Werte der Matrix auf, was ja dann der Zeilen-Nr. entspricht, in der der Name aus C8 gefunden wird.
Das mit dem aufaddieren durch SUMMENPRODUKT funktioniert aber natürlich nur, wenn der gesuchte Name aus C8 im BereichA1:B5 nur ein einziges mal vorkommt.
Sobald der Name in mehrfach vorkommt, stimmt das Ergebnis dann nicht mehr.
In einem solchen Fall hilft dann die zweite Formel mit der MIN-Funktion weiter.
Wenn der gesuchte Name im Bereich A1:C5 mehrfach vorkommt, beinhaltet die Ergebnismatrix der Multiplikation ZEILE(A1:A5)*(A1:B5=C8) also mehrere Zahlen <>0
Und hier kommt dann die MIN-Funktion ins Spiel, die aus dieser Matrix die kleinste Zahl, d.h. die kleinste Zeilennummer zurückgibt (also die Zeile, in der der gesuchte Name im Suchbereich zum ersten Mal auftaucht)
Da die die Ergebnismatrix der Multiplikation von ZEILE(A1:A5)*(A1:B5=C8) ja aus 0en und Zahlen größer 0 muss hier zusätzlich noch der Teil WENN(ZEILE(A1:A5)*(A1:B5=C8)<>0….) eingebaut werden, damit nur die Zahlen größer 0 berücksichtigt werden. (Sonst wäre das Ergebnis der MIN-Funktion immer 0....)
Gruß
Fred
Zitat:Kannst du nur mal schnell die Bezüge von Zeile erkläre, bzw. Warum min?
Erklärung der Formeln:
ZEILE(A1) liefert die Zeilennummer der Zelle A1, also die Zahl 1
ZEILE(A1:A5) liefert die Zeilennummern der Zeilen A1-A5, also die Matrix {1, 2, 3, 4, 5 }
der Ausdruck (A1:B5)=C8 vergleicht ob der Inhalt der Zelle C8 mit den einzelnen Zellen des Bereiches A1:B5 identisch ist und liefert eine (zweidimensionale) Zahlenmatrix mit WAHR und FALSCH zurück.
Durch die Multiplikation werden die beiden Matrizen multipliziert, wobei die WAHR als 1 und FALSCH als 0 interpretiert wird.
Das Ergebnis ist dann eine Matrix, die fast nur aus 0en besteht, nur da wo der Name aus C8 gefunden wird, steht in der Matrix die Zeilenzahl.
Und SUMMENPRODUKT summiert dann die einzelnen Werte der Matrix auf, was ja dann der Zeilen-Nr. entspricht, in der der Name aus C8 gefunden wird.
Das mit dem aufaddieren durch SUMMENPRODUKT funktioniert aber natürlich nur, wenn der gesuchte Name aus C8 im BereichA1:B5 nur ein einziges mal vorkommt.
Sobald der Name in mehrfach vorkommt, stimmt das Ergebnis dann nicht mehr.
In einem solchen Fall hilft dann die zweite Formel mit der MIN-Funktion weiter.
Wenn der gesuchte Name im Bereich A1:C5 mehrfach vorkommt, beinhaltet die Ergebnismatrix der Multiplikation ZEILE(A1:A5)*(A1:B5=C8) also mehrere Zahlen <>0
Und hier kommt dann die MIN-Funktion ins Spiel, die aus dieser Matrix die kleinste Zahl, d.h. die kleinste Zeilennummer zurückgibt (also die Zeile, in der der gesuchte Name im Suchbereich zum ersten Mal auftaucht)
Da die die Ergebnismatrix der Multiplikation von ZEILE(A1:A5)*(A1:B5=C8) ja aus 0en und Zahlen größer 0 muss hier zusätzlich noch der Teil WENN(ZEILE(A1:A5)*(A1:B5=C8)<>0….) eingebaut werden, damit nur die Zahlen größer 0 berücksichtigt werden. (Sonst wäre das Ergebnis der MIN-Funktion immer 0....)
Gruß
Fred