XLOOKUP vs INDEX-MATCH v programe Excel (všetky možné porovnania)

  • Zdieľajte To
Hugh West

Dnes urobím komparatívnu analýzu XLOOKUP vs Funkcie INDEX-MATCH na stránke Excel V predchádzajúcich verziách Excel , používali sme HLOOKUP ,. VLOOKUP a INDEX-MATCH funkcie na hľadanie konkrétnej hodnoty v rozsahu buniek. Office 365 , Excel nám poskytol novú a dynamickú funkciu s názvom XLOOKUP funkcia na vykonanie podobnej operácie sofistikovanejšie. V tomto článku sa pokúsim porovnať široko používané funkcie XLOOKUP a INDEX-MATCH .

Stiahnite si cvičebnicu

Získajte tento vzorový súbor pre lepšie pochopenie.

Funkcie XLOOKUP vs INDEX-MATCH.xlsx

Úvod do funkcie XLOOKUP

Stránka XLOOKUP Funkcia sa používa na vyhľadanie konkrétnej hodnoty v rámci rozsahu buniek alebo poľa. Potom vráti zodpovedajúcu prvú zhodu. Ak neexistuje presná zhoda, zobrazí aj najbližšiu alebo približnú zhodu.

Syntax:

=XLOOKUP(lookup_value,lookup_array,return_array,[if_not_found],[match_mode],[search_mode])

Argumenty:

  • Lookup_value : Je to hodnota, ktorú hľadáme v konkrétnom stĺpci rozsahu.
  • Lookup_array : Je to pole, v ktorom hľadáme lookup_value Môže to byť riadok aj stĺpec.
  • Return_array: Je to stĺpec, z ktorého sa vyberá príslušná hodnota lookup_value sa vráti.

Voliteľné argumenty:

  • If_not_found : Je to hodnota, ktorá sa vráti v prípade, že lookup_array nemá hodnotu lookup_value.
  • Match_mode : Je to číslo označujúce typ zhody lookup_value Toto je nepovinný argument. Môže obsahovať štyri hodnoty.
  1. Keď je 0 , XLOOKUP vyhľadá presnú zhodu (Predvolené).
  2. Keď je 1 , XLOOKUP najprv vyhľadá presnú zhodu. Ak sa presná zhoda nenájde, vyhľadá sa ďalšia menšia hodnota.
  3. Keď je -1 , XLOOKUP najprv vyhľadá presnú zhodu. Ak sa presná zhoda nenájde, vyhľadá sa ďalšia väčšia hodnota.
  4. Keď je 2 , XLOOKUP najprv vyhľadá približnú zhodu pomocou zástupných znakov (platí len pre hodnoty vyhľadávania reťazcov).
  • Režim vyhľadávania : Je to číslo označujúce typ vyhľadávacej operácie vykonanej na poli lookup_array. Je tiež nepovinné. Môže mať aj štyri hodnoty:
  1. Ak je 1 , XLOOKUP bude vyhľadávať zhora nadol v lookup_array (Predvolené nastavenie).
  2. Keď je -1 , XLOOKUP bude vyhľadávať zdola nahor v
  3. Ak je 2 , XLOOKUP vykoná binárne vyhľadávanie vo vzostupnom poradí.
  4. Keď je -2 , XLOOKUP vykoná binárne vyhľadávanie v zostupnom poradí.

Úvod do funkcií INDEX-MATCH

Kombinácia INDEX-MATCH sa používa na načítanie hodnoty z daného miesta a jej porovnanie so zdrojovým rozsahom.

Syntax:

=INDEX(array,MATCH(lookup_value,lookup_array,match_type),no_of_column)

Argumenty:

Pre funkciu INDEX:

  • Pole : Je to rozsah buniek, z ktorých chceme získať hodnotu.
  • MATCH(lookup_value,lookup_array,match_type): Je to číslo riadku rozsahu, v ktorom sa lookup_value zodpovedá konkrétnej hodnote v lookup_array .
  • No_of_column: Je to číslo stĺpca poľa, z ktorého chceme vrátiť hodnotu zodpovedajúcu lookup_value .

Pre funkciu MATCH:

  • Lookup_value: Je to hodnota, ktorú hľadáme.
  • Lookup_array: Je to pole, v ktorom hľadáme lookup_value Môže to byť riadok aj stĺpec.
  • Match_type: Je to celé číslo označujúce typ hľadanej zhody. Tento údaj je nepovinný.
  1. Keď je -1 , MATCH bude najprv hľadať presnú zhodu. V prípade, že presnú zhodu nenájde, bude hľadať ďalšiu väčšiu hodnotu (Predvolené) (opačne ako pri XLOOKUP ).

Podmienkou však je, že lookup_array musia byť zoradené vzostupne. V opačnom prípade sa zobrazí chyba.

  1. Keď je 1 , MATCH bude tiež najprv hľadať presnú zhodu. V prípade, že presnú zhodu nenájde, bude hľadať ďalšiu menšiu hodnotu (opačne ako pri XLOOKUP ).

Podmienkou však je, že lookup_array musí byť tentoraz zoradený zostupne. V opačnom prípade sa zobrazí chyba.

  1. Keď je 0 , MATCH vyhľadá presnú zhodu.

Prečítajte si viac: Ako vybrať konkrétne údaje v programe Excel (6 metód)

7 Porovnanie použitia funkcií XLOOKUP a INDEX-MATCH

Teraz sme rozobrali vzorec, poďme diskutovať o niektorých podobnostiach a odlišnostiach medzi týmito dvoma funkciami. Skôr ako prejdeme k hlavným diskusiám, uvádzam pre vaše pohodlie hlavné body v tabuľke.

Bod diskusie Podobnosť/nepodobnosť Vysvetlenie
Stĺpec lookup_array Podobnosť Oba podporujú stĺpec ako pole lookup_array.
Riadok lookup_array Podobnosť Obidve podporujú riadok ako pole lookup_array.
Žiadna zhoda hodnoty lookup_value Rozdielnosť XLOOKUP má predvolenú možnosť nastavenia bez porovnávania hodnoty lookup_value. INDEX-MATCH ju však nemá.
Približná zhoda Čiastočná podobnosť XLOOKUP dokáže zistiť ďalšiu menšiu alebo ďalšiu väčšiu hodnotu, ak neexistuje presná zhoda. INDEX-MATCH to dokáže tiež, ale pole lookup_array musí byť zoradené vzostupne alebo zostupne.
Zodpovedajúce zástupné znaky Podobnosť Obe podporujú zodpovedajúce zástupné znaky.
Porovnávanie viacerých hodnôt Čiastočná podobnosť XLOOKUP môže zistiť buď prvú, alebo poslednú hodnotu, ak sa zhoduje viac hodnôt. INDEX-MATCH však môže vrátiť len prvú zhodnú hodnotu.
Vzorec poľa Podobnosť Obe podporujú vzorec poľa.

1. XLOOKUP a INDEX-MATCH na vyhľadávanie hodnoty v stĺpci

V tomto ohľade je medzi oboma funkciami podobnosť. XLOOKUP a INDEX-MATCH , pole lookup_array môže byť stĺpcom pre obe funkcie. Tu hľadáme presný Známky z fyziky mena študenta v C ell F5 , Jennifer Marlo Chceli sme hľadať zhora nadol v Meno študenta a vrátiť " Nenájdené " v prípade, že nebola nájdená žiadna zhoda.

  • Pre XLOOKUP , použite vzorec v Bunka G5 .
=XLOOKUP(F5,C5:C16,D5:D16,"Not Found",0,1)

  • Pre INDEX-MATCH , použite tento vzorec v Bunka G5 .
=INDEX(B5:D16,MATCH(F5,C5:C16,0),3)

Prečítajte si viac: Ako porovnať viacero kritérií z rôznych polí v programe Excel

2. XLOOKUP a INDEX-MATCH na vyhľadanie hodnoty v riadku

Aj v tomto aspekte existuje podobnosť medzi oboma funkciami. XLOOKUP a INDEX-MATCH ,. lookup_array môže byť tiež riadkom pre obe funkcie. Pre ilustráciu, máme nový súbor údajov s ID , Názvy a Známky z fyziky a Triedy .

Uvažujme na chvíľu, že ide o veľmi široký súbor údajov a že nevieme, aký počet Trieda Potom, ak chceme zistiť známku konkrétneho žiaka, musíme použiť Riadok záhlavia (B4:E4) ako pole lookup_array a slovo " Trieda " ako lookup_value . Môžeme to dosiahnuť pomocou oboch XLOOKUP a INDEX-MATCH .

  • Zistenie triedy 3. študent ,. XLOOKUP vzorec bude takýto v Bunka G5 .
=XLOOKUP("Grade",B4:E4,B7:E7, "Not Found",0,1)

  • V tomto prípade sa INDEX-MATCH vzorec bude:
=INDEX(B5:E16,3,MATCH("Grade",B4:E4,0))

3. XLOOKUP a INDEX-MATCH Keď sa nenájde žiadna zhoda

Tieto dve funkcie sú v tomto ohľade odlišné. Ak sa hodnota lookup_value nezhoduje so žiadnou hodnotou v lookup_array , môžete nastaviť pevnú hodnotu, ktorá sa má vrátiť v XLOOKUP Ak to chcete urobiť, musíte túto hodnotu nastaviť v if_not_found Na druhej strane, takáto možnosť nie je v INDEX-MATCH . Vráti chybu. Musíte použiť funkcia IFERROR vonku na spracovanie chyby. V danom súbore údajov zistíme Meno študenta s ID 100 .

  • Na tento účel použite nasledujúce XLOOKUP vzorec v Bunka G5 .
=XLOOKUP(100,B5:B16,C5:C16,"Not Found",0,1)

  • Na druhej strane, použite tento INDEX-MATCH vzorec.
=INDEX(B5:E16,MATCH(100,B5:B16,0),2)

  • Keďže vráti chybu, musíte použiť IFERROR funkcia mimo, ktorá túto chybu spracuje.
=IFERROR(INDEX(B5:E16,MATCH(100,B5:B16,0),2), "Nenájdené")

Podobné čítania

  • Excel INDEX MATCH na vrátenie viacerých hodnôt v jednej bunke
  • Vzorec Excel INDEX-MATCH na vrátenie viacerých hodnôt horizontálne
  • Ako používať vzorec INDEX-MATCH v programe Excel na generovanie viacerých výsledkov
  • [Opravené!] INDEX MATCH nevracia správnu hodnotu v programe Excel (5 dôvodov)
  • Ako používať INDEX MATCH namiesto VLOOKUP v programe Excel (3 spôsoby)

4. XLOOKUP a INDEX-MATCH v prípade približnej zhody

V tomto ohľade existuje čiastočná podobnosť medzi oboma funkciami. XLOOKUP ak je funkcia lookup_value sa nezhoduje so žiadnou hodnotou v lookup_array , môžete vzorec upraviť tak, aby vrátil najbližšiu menšiu alebo najbližšiu väčšiu hodnotu. Nastavte argument match_type na -1 ak chcete ďalšiu menšiu hodnotu a nastavte ju na 1 ak chcete ďalšiu väčšiu hodnotu.

Napríklad zistíme, že študent so známkou 50 alebo ďalšiu väčšiu značku.

  • Ak chcete zistiť hodnotu, použite tento postup XLOOKUP vzorec.
=XLOOKUP(50,D5:D16,C5:C16,"Not Found",1,1)

  • Ako vidíte, neexistuje študent so známkou 50 Preto sa zobrazuje hneď po 50 , 51 podľa Desmond Hayes .

Rovnaká možnosť je aj v INDEX-MATCH Vzorec. Nedostatkom však je, že ak chcete získať ďalšiu väčšiu hodnotu, musíte zoradiť pole lookup_array zostupne. V opačnom prípade sa vráti chyba. A ak chcete získať ďalšiu menšiu hodnotu, musíte zoradiť vzostupne.

  • Najprv vložte tento vzorec do Bunka G5 .
=INDEX(B5:E16,MATCH(50,D5:D16,-1),2)

  • Výsledkom je, že sa vo výsledku zobrazí #N/A chyba.
  • Preto zoraďte Rozsah buniek D5:D16 vo vzostupnom poradí a dostanete správnu hodnotu.

Osobitná poznámka: V XLOOKUP funkcie, -1 funguje pre ďalšiu menšiu hodnotu, ale v INDEX-MATCH , -1 funguje pre ďalšiu väčšiu hodnotu. Podobne v XLOOKUP 1 funguje pre ďalšiu väčšiu hodnotu, ale v INDEX-MATCH, 1 funguje pre ďalšiu menšiu hodnotu.

Prečítajte si viac: Ako používať INDEX a Match na čiastočnú zhodu (2 spôsoby)

5. XLOOKUP a INDEX-MATCH v prípade porovnávania zámenných znakov

V tomto ohľade je medzi týmito dvoma funkciami podobnosť. XLOOKUP a INDEX-MATCH , obe podporujú Divoké karty . Tu zistíme, že každý študent s " Marlo " ako druhý názov. Postupujme podľa nižšie uvedených krokov, aby sme videli XLOOKUP vs INDEX-MATCH porovnanie.

  • Najprv použite tento XLOOKUP vzorec v Bunka G5 na získanie výstupu.
=XLOOKUP("*Marlo*",C5:C16,C5:C16,"Not Found",2,1)

Poznámka: Používanie zástupných znakov v XLOOKUP , musíte nastaviť match_type argument na 2 V opačnom prípade nebude fungovať.

  • Na druhej strane INDEX-MATCH vzorec na dosiahnutie rovnakej úlohy bude takýto.
=INDEX(B5:E16,MATCH("*Marlo*",C5:C16,0),2)

Prečítajte si viac: INDEX MATCH Viaceré kritériá so zástupným znakom v programe Excel (kompletný sprievodca)

6. XLOOKUP a INDEX-MATCH Keď sa viac hodnôt zhoduje s hodnotou vyhľadávania

Tento príklad ukazuje XLOOKUP vs INDEX-MATCH keď sa vyhľadávanej hodnote zhoduje viacero hodnôt. V tomto ohľade existuje aj čiastočná podobnosť medzi oboma funkciami. XLOOKUP a INDEX-MATCH vracajú iba jednu hodnotu v prípade, že je v položke lookup_array zodpovedá lookup_value . Ale v XLOOKUP môžete upraviť vyhľadávanie tak, aby ste získali prvú alebo poslednú zhodu. Ak chcete získať prvú zhodnú hodnotu, nastavte search_type argument na 1 . A ak chcete získať poslednú zhodnú hodnotu, nastavte search_type argument na -1 . Ale v INDEX-MATCH nemáte na výber. Dostanete len prvú zhodnú hodnotu.

  • Získať prvého študenta, ktorý dostal 100 , môžete použiť tento XLOOKUP vzorec v Bunka G5 .
=XLOOKUP(100,D5:D16,C5:C16,"Not Found",0,1)

  • Spolu s ním získate posledného študenta s 100 pomocou tohto XLOOKUP vzorec.
=XLOOKUP(100,D5:D16,C5:C16,"Not Found",0,-1)

  • Naopak, dostanete len prvú hodnotu, ktorá sa zhoduje s touto INDEX-MATCH vzorec.
=INDEX(B5:E16,MATCH(100,D5:D16,0),2)

7. XLOOKUP a INDEX-MATCH v prípade viacerých hodnôt vyhľadávania

V tomto príklade ukážeme. XLOOKUP vs INDEX-MATCH v prípade viacnásobného vyhľadávania hodnôt. V tomto ohľade existuje podobnosť medzi oboma funkciami. Obe umožňujú viacnásobné lookup_values (Vzorec poľa).

  • Pre XLOOKUP bude fungovať nasledujúci vzorec.
=XLOOKUP(G5:G8,B5:B16,E5:E16,"Not Found",0,1)

  • Potom pre INDEX-MATCH , bude fungovať aj nasledujúca funkcia.
=INDEX(B5:E16,MATCH(G5:G8,B5:B16,0),4)

Výhody a nevýhody funkcie XLOOKUP

Používanie systému má určité výhody a nevýhody XLOOKUP funkcie. Pozrime sa na ne v krátkosti.

Výhody

  • Nastavenie predvolenej hodnoty pre prípady bez zhody.
  • Môže vyhľadávať približné zhody bez triedenia lookup_array .
  • Prístup k vyhľadávaniu z prvej aj poslednej bunky lookup_array .

Nevýhody

  • Funguje pomalšie ako INDEX-MATCH funkcie.
  • K dispozícii v Office 365 iba.

Výhody a nevýhody funkcií INDEX-MATCH

Stránka INDEX-MATCH funkcie majú aj niektoré z nasledujúcich výhod a nevýhod.

Výhody

  • Funguje rýchlejšie ako XLOOKUP funkcie.
  • K dispozícii v starej Excel verzie.

Nevýhody

  • Nedokáže spracovať chyby, keď sa nenájde žiadna zhoda.
  • Potrebuje lookup_array ktoré sa majú triediť na približnú zhodu.
  • Vráti iba prvú hodnotu, ak sa viac hodnôt zhoduje s lookup_value .

Záver

Konečne sme na konci nášho dlhého článku. Tu sme sa pokúsili vytvoriť komparatívnu analýzu XLOOKUP proti INDEX-MATCH funkcie v programe Excel. Dajte nám vedieť svoje postrehy k tejto téme. ExcelWIKI ďalšie návody.

Hugh West je veľmi skúsený tréner a analytik Excelu s viac ako 10-ročnými skúsenosťami v tomto odvetví. Má bakalársky titul v odbore účtovníctvo a financie a magisterský titul v odbore Business Administration. Hugh má vášeň pre vyučovanie a vyvinul jedinečný vyučovací prístup, ktorý sa dá ľahko sledovať a pochopiť. Jeho odborné znalosti Excelu pomohli tisíckam študentov a profesionálov na celom svete zlepšiť svoje zručnosti a vyniknúť vo svojej kariére. Hugh sa prostredníctvom svojho blogu delí o svoje znalosti so svetom a ponúka bezplatné výukové programy Excelu a online školenia, ktoré jednotlivcom a firmám pomôžu naplno využiť ich potenciál.