Excel-Formel: XLOOKUP Groß- und Kleinschreibung beachten -

Inhaltsverzeichnis

Generische Formel

=XLOOKUP(1,--EXACT(range1,"RED"),range2)

Zusammenfassung

Um eine exakte Übereinstimmung zwischen Groß- und Kleinschreibung zu erstellen, können Sie die XLOOKUP-Funktion mit der EXACT-Funktion verwenden. In dem gezeigten Beispiel lautet die Formel in F5:

=XLOOKUP(1,--EXACT(B5:B15,"RED"),B5:D15)

Dies entspricht "ROT" (Groß- und Kleinschreibung beachten) und gibt die gesamte Zeile zurück.

Erläuterung

Die XLOOKUP-Funktion unterscheidet nicht zwischen Groß- und Kleinschreibung. Ein Suchwert von "ROT" entspricht "rot", "ROT" oder "rot". Wir können diese Einschränkung umgehen, indem wir ein geeignetes Lookup-Array für XLOOKUP mit einem logischen Ausdruck erstellen.

Um XLOOKUP von innen nach außen arbeiten zu lassen, verwenden wir die EXACT-Funktion wie folgt:

EXACT(B5:B15,"RED") // test for "RED"

Da es 11 Werte im Bereich E5: D15 gibt, gibt EXACT ein Array mit 11 TRUE FALSE-Ergebnissen wie folgt zurück:

(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE)

Beachten Sie, dass die Position von TRUE der Zeile entspricht, in der die Farbe "ROT" ist.

Der Kürze halber (und damit die Logik leicht mit boolescher Logik erweitert werden kann) erzwingen wir die TRUE FALSE-Werte mit dem doppelten Negativ auf 1s und 0s:

--EXACT(B5:B15,"RED") // convert to 1s and 0s

was ein Array wie folgt ergibt:

(0;0;0;0;1;0;0;0;0;0;0)

Beachten Sie, dass die Position 1 der Zeile entspricht, in der die Farbe "ROT" ist. Dieses Array wird als Lookup-Array-Argument direkt an die XLOOKUP-Funktion zurückgegeben.

Wir können jetzt einfach die Formel zu:

=XLOOKUP(1,(0;0;0;0;1;0;0;0;0;0;0),B5:D15)

Mit einem Suchwert von 1 findet XLOOKUP die 1 an der 5. Position und gibt die 5. Zeile im Rückgabearray B9: D9 zurück.

Die Logik erweitern

Die Struktur der Logik kann leicht erweitert werden. Um beispielsweise die Übereinstimmung im April auf "ROT" zu beschränken, können Sie eine Formel wie die folgende verwenden:

=XLOOKUP(1,EXACT(B5:B15,"RED")*(MONTH(C5:C15)=4),B5:D15)

Da jeder der beiden Ausdrücke ein Array von TRUE FALSE-Werten zurückgibt und diese Arrays miteinander multipliziert werden, zwingt die mathematische Operation die TRUE- und FALSE-Werte auf 1s und 0s. Es ist nicht erforderlich, das Doppel-Negativ zu verwenden.

Da der Suchwert 1 bleibt, wie in der obigen Formel.

Erstes und letztes Spiel

Beide obigen Formeln geben die erste Übereinstimmung von "ROT" in einem Datensatz zurück. Wenn Sie die letzte Übereinstimmung benötigen, können Sie eine umgekehrte Suche durchführen, indem Sie das Argument für den Suchmodus für XLOOKUP auf -1 setzen:

=XLOOKUP(1,--EXACT(B5:B15,"RED"),B5:D15,,,-1) // last match

Wenn Sie Ergebnisse aus mehreren Übereinstimmungen zurückgeben müssen, lesen Sie die Funktion FILTER.

Interessante Beiträge...