Excel 2020: Zwölf Vorteile von XLOOKUP - Excel-Tipps

Die neue XLOOKUP-Funktion wird ab November 2019 in Office 365 eingeführt. Joe McDaid vom Excel-Team hat XLOOKUP entwickelt, um die Benutzer von VLOOKUP und die Benutzer von INDEX / MATCH zu vereinen. In diesem Abschnitt werden die 12 Vorteile von XLOOKUP erläutert:

  1. Genaue Übereinstimmung ist die Standardeinstellung.
  2. Das ganzzahlige dritte Argument von VLOOKUP ist jetzt eine richtige Referenz.
  3. IFNA ist integriert, um fehlende Werte zu behandeln.
  4. XLOOKUP hat kein Problem, nach links zu gehen.
  5. Finden Sie die nächst kleinere oder nächst größere Übereinstimmung, ohne die Tabelle zu sortieren.
  6. XLOOKUP kann HLOOKUP ausführen.
  7. Finden Sie die letzte Übereinstimmung, indem Sie von unten suchen.
  8. Platzhalter sind standardmäßig deaktiviert, Sie können sie jedoch wieder aktivieren.
  9. Geben Sie alle 12 Monate in einer einzigen Formel zurück.
  10. Kann eine Zellreferenz zurückgeben, wenn sich das XLOOKUP neben einem Doppelpunkt wie XLOOKUP (); XLOOKUP () befindet.
  11. Kann ein Zwei-Wege-Match wie INDEX (, MATCH, MATCH) durchführen.
  12. Kann alle Lookups in einer einzigen Formel zusammenfassen, wie es LOOKUP tun könnte.

Hier ist die Syntax: = XLOOKUP (Lookup_Value, Lookup_Array, Results_Array, (if_not_found), (match_mode), (search_mode)).

XLOOKUP Vorteil 1: Standardmäßig genaues Match

99% meiner VLOOKUP-Formeln enden mit, FALSE oder, 0, um eine genaue Übereinstimmung anzuzeigen. Wenn Sie immer die exakte Übereinstimmungsversion von VLOOKUP verwenden, können Sie den match_mode für Ihre XLOOKUP-Funktion deaktivieren.

In der folgenden Abbildung sehen Sie W25-6 in Zelle A4. Sie möchten diesen Artikel in L8: L35 suchen. Wenn es gefunden wird, möchten Sie den entsprechenden Preis aus Spalte N haben. Es ist nicht erforderlich, False als match_mode anzugeben, da XLOOKUP standardmäßig eine genaue Übereinstimmung verwendet.

XLOOKUP den Wert in A4. Schauen Sie in L8: L35. Geben Sie den entsprechenden Preis von N8: N35 zurück.

XLOOKUP-Vorteil 2: Das Results_Array ist eine Referenz anstelle einer Ganzzahl

Denken Sie an die VLOOKUP-Formel, die Sie vor XLOOKUP verwenden würden. Das dritte Argument wäre eine 3 gewesen, um anzuzeigen, dass Sie die dritte Spalte zurückgeben möchten. Es bestand immer die Gefahr, dass ein ahnungsloser Mitarbeiter eine Spalte in Ihre Tabelle eingefügt (oder gelöscht) hätte. Mit einer zusätzlichen Spalte in der Tabelle würde der VLOOKUP, der einen Preis zurückgegeben hat, eine Beschreibung zurückgeben. Da XLOOKUP auf eine Zellreferenz zeigte, schreibt sich die Formel neu, um weiterhin auf den Preis in Spalte O zu verweisen.

Das alte VLOOKUP würde fehlschlagen, wenn jemand eine neue Spalte in die Nachschlagetabelle einfügen würde. XLOOKUP arbeitet weiter.

XLOOKUP Vorteil 3: IFNA ist als optionales Argument integriert

Der gefürchtete Fehler # N / A wird zurückgegeben, wenn Ihr Suchwert nicht in der Tabelle gefunden wird. In der Vergangenheit mussten Sie IFERROR oder IFNA verwenden, um das VLOOKUP zu wickeln, um # N / A durch etwas anderes zu ersetzen.

Wenn ein Element nicht gefunden wird, gibt es # N / A von VLOOKUP oder XLOOKUP zurück…

Dank eines Vorschlags von Rico auf meinem YouTube-Kanal hat das Excel-Team ein optionales viertes Argument für if_not_found eingefügt. Wenn Sie diese # N / A-Fehler durch Null ersetzen möchten, fügen Sie einfach 0 als viertes Argument hinzu. Sie können auch Text verwenden, z. B. "Wert nicht gefunden".

Das optionale vierte Argument in XLOOKUP lautet "falls nicht gefunden". Geben Sie dort eine 0 oder "Nicht gefunden" ein.

XLOOKUP Vorteil 4: Kein Problem, wenn Sie links neben dem Schlüsselfeld nachsehen

VLOOKUP kann nicht links vom Schlüsselfeld schauen, ohne auf VLOOKUP zurückzugreifen (A4, WÄHLEN ((1,2), G7: G34, F7: F34), 2, Falsch). Mit XLOOKUP ist es kein Problem, das Results_array links vom Lookup_array zu haben.

Mit XLOOKUP ist es kein Problem, die Kategorie aus Spalte F zurückzugeben, während die Teilenummern in Spalte G nachgeschlagen werden. Dies war immer die Schwäche von VLOOKUP: Es konnte nicht nach links schauen.

XLOOKUP Vorteil 5: Nächste kleinere oder nächste größere Übereinstimmung ohne Sortierung

VLOOKUP hatte die Option, nach der genauen Übereinstimmung oder nur nach einem kleineren Wert zu suchen. Sie können entweder das vierte Argument in VLOOKUP weglassen oder False in True ändern. Damit dies funktioniert, musste die Nachschlagetabelle in aufsteigender Reihenfolge sortiert werden.

Ein Beispiel für die Approximate Match-Version von VLOOKUP. Jeder Verkauf von 10 Tausend bis 20 Tausend erhält einen Bonus von 12 US-Dollar.

VLOOKUP war jedoch nicht in der Lage, die genaue Übereinstimmung oder den nächstgrößeren Gegenstand zurückzugeben. Dazu musste man auf MATCH mit -1 als match_mode umstellen und darauf achten, dass die Nachschlagetabelle absteigend sortiert war.

Das optionale fünfte Argument von XLOOKUP, match_mode, kann nur nach der genauen Übereinstimmung suchen, die gleich oder nur kleiner, gleich oder nur größer ist. Beachten Sie, dass die Werte in XLOOKUP sinnvoller sind als in MATCH:

  • -1 findet den Wert gleich oder nur kleiner
  • 0 finde eine genaue Übereinstimmung
  • 1 findet den Wert gleich oder nur größer.

Das Erstaunlichste ist jedoch, dass die Nachschlagetabelle nicht sortiert werden muss und jeder match_mode funktioniert.

Unten findet ein match_mode von -1 das nächst kleinere Element.

Das fünfte Argument von XLOOKUP ist Match_Mode. 0 steht für exakte Übereinstimmung. Negativ wird für Exact Match oder Next Smaller Item verwendet. Positiv 1 steht für die genaue Übereinstimmung oder den nächstgrößeren Gegenstand. 2 ist für Wildcard Match. Um zu spiegeln, was VLOOKUP mit True im vierten Argument bewirken würde, geben Sie in XLOOKUP ein negatives Argument als match_mode ein.

Hier findet ein match_mode von 1, welches Fahrzeug abhängig von der Anzahl der Personen in der Gruppe benötigt wird. Beachten Sie, dass die Nachschlagetabelle nicht nach Passagieren sortiert ist und sich der Fahrzeugname links vom Schlüssel befindet.

XLOOKUP kann etwas, was VLOOKUP nicht kann: die genaue Übereinstimmung finden oder nur größer. In diesem Fall hat ein Reiseveranstalter eine Liste mit Reservierungen. Basierend auf der Anzahl der Passagiere zeigt die Nachschlagetabelle, welches Fahrzeug Sie für diese Personen benötigen.

Auf dem Tisch steht:

  • Bus hält 64 Personen
  • Auto hält 4 Personen
  • Motorrad hält 1 Person
  • Tour Van fasst 12 Personen
  • Van halten 6 Personen.

Als Bonus werden die Daten nach Fahrzeug sortiert (in der alten Lösung müsste die Tabelle mit MATCH absteigend nach Kapazität sortiert werden. Außerdem: Das Fahrzeug befindet sich links von Kapazität.

XLOOKUP Vorteil 6: Seitwärts XLOOKUP ersetzt HLOOKUP

Das lookup_array und das results_array können mit XLOOKUP horizontal sein, was das Ersetzen von HLOOKUP vereinfacht.

Hier ist die Nachschlagetabelle horizontal. In der Vergangenheit war hierfür HLOOKUP erforderlich, aber XLOOKUP kann mit einer Tabelle umgehen, die seitwärts verläuft.

XLOOKUP Vorteil 7: Suchen Sie von unten nach dem neuesten Spiel

Ich habe ein altes Video auf YouTube, das eine Frage von einer britischen Pferdefarm beantwortet. Sie hatten eine Flotte von Fahrzeugen. Jedes Mal, wenn ein Fahrzeug für Kraftstoff oder Service eintraf, wurden Fahrzeug, Datum und Kilometerstand in einer Tabelle aufgezeichnet. Sie wollten für jedes Fahrzeug den neuesten bekannten Kilometerstand ermitteln. Während die Excel-2017-Ära MAXIFS dies heute lösen könnte, war die Lösung vor vielen Jahren eine arkane Formel unter Verwendung von LOOKUP und beinhaltete die Division durch Null.

Mit dem optionalen sechsten Argument von XLOOKUP können Sie heute festlegen, dass die Suche am unteren Rand des Datensatzes beginnen soll.

Finden Sie die letzte Übereinstimmung in der Liste.

Hinweis

Dies ist zwar eine große Verbesserung, aber Sie können nur das erste oder letzte Spiel finden. Einige Leute hofften, dass Sie damit die zweite oder dritte Übereinstimmung finden könnten, aber das ist nicht die Absicht des Arguments search_mode.

Vorsicht

Die obige Abbildung zeigt, dass es Suchmodi gibt, die die alte binäre Suche verwenden. Joe McDaid rät davon ab. Erstens ist der verbesserte Suchalgorithmus von 2018 schnell genug, dass es keinen signifikanten Geschwindigkeitsvorteil gibt. Zweitens laufen Sie Gefahr, dass ein ahnungsloser Mitarbeiter die Nachschlagetabelle sortiert und falsche Antworten einführt.

XLOOKUP Vorteil 8: Platzhalter sind standardmäßig "deaktiviert"

Den meisten Menschen war nicht klar, dass VLOOKUP Sternchen, Fragezeichen und Tilde als Platzhalterzeichen behandelt, wie unter "Verwenden eines Platzhalters in VLOOKUP" auf Seite 143 beschrieben. Bei XLOOKUP sind Platzhalter standardmäßig deaktiviert. Wenn XLOOKUP diese Zeichen als Platzhalter behandeln soll, verwenden Sie 2 als Match_Mode.

Nur sehr wenige Menschen haben erkannt, dass VLOOKUP Sternchen im Suchwert als Platzhalter behandelt. Standardmäßig verwendet XLOOKUP keine Platzhalter, aber Sie können erzwingen, dass es sich wie VLOOKUP verhält, wenn Sie einen Übereinstimmungsmodus von 2: Wildcard Character Match verwenden.

XLOOKUP-Vorteil 9: Geben Sie alle 12 Monate in einer einzigen Formel zurück!

Dies ist wirklich ein Vorteil von Dynamic Arrays, aber es ist mein Lieblingsgrund, XLOOKUP zu lieben. Wenn Sie alle 12 Monate in einer Suche zurückgeben müssen, gibt eine einzelne in B6 eingegebene Formel mit einem rechteckigen return_array mehrere Ergebnisse zurück. Diese Ergebnisse werden in benachbarte Zellen übertragen.

In der folgenden Abbildung gibt eine einzelne in B7 eingegebene Formel alle 12 in B7: M7 gezeigten Antworten zurück.

Ein einzelnes XLOOKUP in der Januar-Spalte gibt Zahlen für Januar bis Dezember zurück. Dies erfolgt durch Angabe eines results_array mit 12 Spalten.

XLOOKUP-Vorteil 10: Kann eine Zellreferenz zurückgeben, wenn sie an Colon angrenzt

Dieser ist komplex, aber wunderschön. In der Vergangenheit gab es sieben Funktionen, die sich von der Rückgabe eines Zellenwerts zur Rückgabe einer Zellreferenz änderten, wenn die Funktion einen Doppelpunkt berührte. Ein Beispiel finden Sie unter Verwenden von A2: INDEX () als nichtflüchtiges OFFSET. XLOOKUP ist die Achterfunktion, die dieses Verhalten bietet und CHOOSE, IF, IFS, INDEX, INDIRECT, OFFSET und SWITCH verbindet.

Betrachten Sie die folgende Abbildung. Jemand wählt Cherry in E4 und Fig in E5. Sie möchten eine Formel, die alles von B6 bis B9 summiert.

Die Abbildung zeigt zwei XLOOKUP-Formeln in zwei Zellen. Der erste gibt 15 aus Zelle B6 zurück. Der zweite läuft 30 von B9 zurück. Aber dann gibt es in einer dritten Zelle eine Formel, die die beiden XLOOKUP-Formeln mit einem Doppelpunkt verbindet und diese dann in eine SUMME-Funktion einschließt. Das Ergebnis ist die SUMME von B6: B9, da XLOOKUP eine Zellreferenz zurückgeben kann, wenn die Funktion neben einem Operator wie einem Doppelpunkt angezeigt wird. Um zu beweisen, dass dies funktioniert, wird diese Formel in den nächsten Abbildungen im Dialogfeld "Formel auswerten" angezeigt.

In der obigen Abbildung sehen Sie, dass ein XLOOKUP von E4 die 15 aus Zelle B6 zurückgibt. Ein XLOOKUP von E5 gibt die 30 von B9 zurück. Wenn Sie jedoch die beiden XLOOKUP-Funktionen aus den Zellen D9 und D10 übernehmen und sie mit einem Doppelpunkt dazwischen zusammenfügen, ändert sich das Verhalten von XLOOKUP. Anstatt 15 zurückzugeben, gibt der erste XLOOKUP die Zellenadresse B6 zurück!

Um dies zu beweisen, habe ich D7 ausgewählt und Formeln, Formel auswerten verwendet. Nach zweimaligem Drücken von Auswerten ist der nächste zu berechnende Teil XLOOKUP ("Cherry", A4: A29, B4: B29), wie hier gezeigt.

Dies zeigt das Dialogfeld "Formel auswerten" unmittelbar vor dem Auswerten des ersten XLOOKUP. Dieser XLOOKUP erscheint kurz vor einem Doppelpunkt.

Drücken Sie erneut auf Auswerten. Erstaunlicherweise gibt die XLOOKUP-Formel $ B $ 6 anstelle der in B6 gespeicherten 15 zurück. Dies geschieht, weil unmittelbar nach dieser XLOOKUP-Formel ein Doppelpunkt folgt.

Klicken Sie auf Auswerten und der erste XLOOKUP gibt $ B $ 6 statt 15 zurück.

Drücken Sie noch zweimal Auswerten, und die Zwischenformel lautet = SUMME (B6: B9).

Nach Auswertung des zweiten XLOOKUP lautet die Zwischenformel = SUMME (B6: B9).

Dies ist ein erstaunliches Verhalten, von dem die meisten Menschen nichts wissen. Excel MVP Charles Williams sagt mir, dass es mit jedem dieser drei Operatoren neben XLOOKUP ausgelöst werden kann:

  • Doppelpunkt
  • Leerzeichen (Kreuzungsoperator)
  • Komma (Union Operator)

XLOOKUP Vorteil 11: Zwei-Wege-Match wie INDEX (, MATCH, MATCH)

Für alle meine VLOOKUP-Freunde haben die INDEX / MATCH-Leute darauf gewartet, ob XLOOKUP ein Zwei-Wege-Match bewältigen kann. Die gute Nachricht: Es kann es tun. Die schlechte Nachricht: Die Methodik unterscheidet sich ein wenig von den INDEX / MATCH-Fans. Es könnte ein wenig über ihren Köpfen sein. Aber ich bin sicher, dass sie zu dieser Methode kommen können.

Für eine bidirektionale Übereinstimmung möchten Sie herausfinden, welche Zeile die in J3 angegebene Kontonummer A621 enthält. Das XLOOKUP beginnt also ganz einfach: = XLOOKUP (J3, A5: A15. Dann müssen Sie jedoch ein results_array bereitstellen. Sie können den gleichen Trick wie in XLOOKUP-Vorteil 9 anwenden: Alle 12 Monate in einer einzigen Formel oben zurückgeben, aber Verwenden Sie diese Option, um einen vertikalen Vektor zurückzugeben. Ein inneres XLOOKUP sucht in den Monatsüberschriften in B4: G4 nach dem J4-Monat. Das return_array wird als B5: G15 angegeben. Das Ergebnis ist, dass das innere XLOOKUP ein Array wie das in I10 gezeigte zurückgibt : I20 unten. Da A621 in der fünften Zelle des lookup_array und 104 in der fünften Zelle des results_array gefunden wird, erhalten Sie die richtige Antwort aus der Formel. Unten zeigt J6 den alten Weg. J7 gibt den neuen Weg zurück.

XLookup J3 in der Liste der Konten in A5: A15. Verwenden Sie für das Ergebnisarray XLOOKUP (J4, B4: G4, B5: G15). In dieser Formel ist B4: G4 eine Liste von Monaten. B5: G15 ist das rechteckige Wertearray für alle Konten für alle Monate. In einer anderen Zelle zeigt nur das innere XLOOKUP, wie die gesamte Wertespalte für Mai zurückgegeben wird.

XLOOKUP-Vorteil 12: Summieren Sie alle Suchwerte in einer einzigen Formel

Die alte LOOKUP-Funktion bot zwei seltsame Tricks. Wenn Sie versuchen, den Gesamtbetrag der anfallenden Bonuskosten zu ermitteln, können Sie LOOKUP zunächst bitten, alle Werte in einer einzigen Formel nachzuschlagen. In der Abbildung unten führt LOOKUP (C4: C14 11 Suchvorgänge durch. Die LOOKUP-Funktion bot jedoch keine genaue Übereinstimmung und erforderte eine Sortierung der Nachschlagetabelle.

Suchen Sie nach 13 Werten und summieren Sie diese. Dies funktionierte früher mit LOOKUP, aber auch mit XLOOKUP. Geben Sie als erstes Argument alle Suchwerte C4: C14 an. Wickeln Sie den XLOOKUP in eine SUMME-Funktion.

Mit XLOOKUP können Sie einen Bereich angeben, da lookup_value und XLOOKUP alle Antworten zurückgeben. Der Vorteil ist, dass XLOOKUP exakte Übereinstimmungen durchführen kann.

Der Trick, mit LOOKUP alle Suchergebnisse zusammenzufassen, funktionierte nur mit der ungefähren Übereinstimmungsversion von Lookup. Hier stimmt XLOOKUP mit allen Namen in L4: L14 genau überein und erhält insgesamt alle Ergebnisse.

Bonus-Tipp: Was ist mit einem Twisted LOOKUP?

Excel MVP Mike Girvin zeigt häufig einen Trick der LOOKUP-Funktion, bei dem der Lookup_Vector vertikal und der Result_Vector horizontal ist. XLOOKUP unterstützt diesen Trick nicht von Haus aus. Wenn Sie jedoch ein wenig schummeln und das results_array in die TRANSPOSE-Funktion einbinden, können Sie eine verdrehte Suche verwalten.

Hier ist das Sucharray vertikal und das Ergebnisarray horizontal. Die alte LOOKUP-Funktion kann damit umgehen, aber um dies mit XLOOKUP zu tun, müssen Sie beide Arrays in TRANSPOSE einschließen.

Interessante Beiträge...