Excel: In einer Matrix suchen mit mehr als einer Bedingung ("Frank Kabel - Lösung")

SVERWEIS und WVERWEIS sind prima, helfen aber nicht, wenn mehr als eine Suchbedingung ausgewertet werden muss. Vor Kurzem stand ich vor dieser Aufgabe und bin über folgende, wie ich finde, geniale Lösung gestolpert (http://www.excelformeln.de/formeln.html?welcher=48).

 

=VERWEIS(1;1/(A3:A12&B3:B12=E3&F3);C3:C12)

  • Grundidee ist es, die Eigenschaft von VERWEIS auszunutzen, in einem sortierten Vektor nach dem ersten Wert zu suchen, der am besten passt. Es ist daher egal, ob für das Suchkriterium 1 oder 500 oder irgend eine andere positive Zahl angegeben wird.
  • Der Suchvektor wird durch den Formelteil 1/(A3:A12&B3:B12=E3&F3) zusammengebastelt und sieht so aus:
    {#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;1;#DIV/0!;#DIV/0!;#DIV/0!}
    Verweis findet also die Position 7.
    Das funktioniert so schön, weil FALSCH intern mit dem Wert 0 abgebildet ist, was bei der Division durch FALSCH zum Fehlerwert #DIV/0 führt.
  • VERWEIS schaut dann in einem Ergebnisvektor (hier C3:C12) an der gleichen Position nach und gibt den Wert dort als Formelergebnis aus (hier 7).

Ich bin begeistert! Eine Beispiellösung zum Download liegt bei.

Download
Beispiel: Verweis mit mehreren Bedingungen
Unter Anwendung der "Frank-Kabel-Lösung"
VerweisMitMehrerenBedingungen.xlsx
Microsoft Excel Tabelle 12.5 KB

Kommentar schreiben

Kommentare: 1
  • #1

    Fabio (Dienstag, 26 Juni 2018 11:04)

    Hallo,
    sollte der Wert "7" in Spalte "C" zweimal vorkommen, gibt die Formel immer den untersten Wert aus. Gibt es eine Möglichkeit, die Funktion "von oben nach unten" durchscannen zu lassen, als anders rum?
    Lg