XLOOKUP vs INDEX-MATCH in Excel (alle moontlike vergelykings)

  • Deel Dit
Hugh West

Ek sal vandag 'n vergelykende analise maak van die XLOOKUP vs INDEX-MATCH funksies in Excel . In die vorige weergawes van Excel het ons die HOOGUP -, die VLOOKUP - en die INDEX-MATCH -funksies gebruik om na te soek 'n spesifieke waarde in 'n reeks selle. Met die opkoms van Office 365 het Excel ons egter voorsien van 'n nuwe en dinamiese funksie genaamd die XLOOKUP -funksie om 'n soortgelyke operasie meer gesofistikeerd uit te voer. In hierdie artikel sal ek probeer om die wyd gebruikte funksies, die XLOOKUP en die INDEX-MATCH te vergelyk.

Laai Oefenwerkboek af

Kry hierdie voorbeeldlêer vir 'n beter begrip.

XLOOKUP vs INDEX-MATCH Functions.xlsx

Inleiding tot XLOOKUP-funksie

Die XLOOKUP -funksie word gebruik om 'n spesifieke waarde binne 'n reeks selle of 'n skikking te vind. Daarna gee dit die ooreenstemmende eerste wedstryd terug. Dit wys ook die naaste of benaderde passing wanneer daar geen presiese passing is nie.

Sintaksis:

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

Argumente:

  • Opsoekwaarde : Dit is die waarde wat ons is soek na in 'n spesifieke kolom van die reeks.
  • Opsoek_skikking : Dit is die skikking waarin ons die opsoekwaarde soek. Kan beide ry en weeseerste of laaste wedstryd. Om die eerste waarde te kry wat ooreenstem, stel die soektipe argument op 1 . En om die laaste waarde te kry wat ooreenstem, stel die soektipe -argument na -1 . Maar in INDEX-MATCH het jy geen keuse nie. Jy sal net die eerste waarde kry wat ooreenstem.
  • Om die eerste student te kry wat 100 gekry het, kan jy hierdie XLOOKUP -formule in gebruik Sel G5 .
=XLOOKUP(100,D5:D16,C5:C16,"Not Found",0,1)

  • Daarmee saam kry jy die laaste student met 100 deur hierdie XLOOKUP -formule te gebruik.
=XLOOKUP(100,D5:D16,C5:C16,"Not Found",0,-1)

  • Inteendeel, jy sal slegs die eerste waarde kry wat ooreenstem met hierdie INDEX-MATCH formule.
=INDEX(B5:E16,MATCH(100,D5:D16,0),2)

7. XLOOKUP en INDEX-MATCH in die geval van veelvuldige opsoekwaardes

In hierdie voorbeeld sal ons XLOOKUP teenoor INDEX-MATCH demonstreer in die geval van veelvuldige opsoekwaardes. Daar is 'n ooreenkoms tussen die twee funksies in hierdie verband. Beide laat veelvuldige soekwaardes toe (Skikkingsformule).

  • Vir die XLOOKUP funksie sal die volgende formule werk.
=XLOOKUP(G5:G8,B5:B16,E5:E16,"Not Found",0,1)

  • Dan, vir INDEX-MATCH , sal die volgende funksie ook werk.
=INDEX(B5:E16,MATCH(G5:G8,B5:B16,0),4)

Voordele & Nadele van XLOOKUP-funksie

Daar is sekere voordele en nadele van die gebruik van die XLOOKUP -funksie. Kom ons sien hulle kortliks.

Voordele

  • Stel 'n verstekwaarde op vir geen ooreenstemmende gevalle nie.
  • Kan vir benaderde passings soek sonder om die opsoek_skikking te sorteer.
  • Het toegang om te soek vanaf beide die eerste sel en die laaste sel van die lookup_array .

Nadele

  • Werk stadiger as die INDEX-MATCH -funksie.
  • Slegs in Office 365 beskikbaar.

Voordele & Nadele van INDEX-MATCH-funksies

Die INDEX-MATCH -funksies het ook van die volgende voor- en nadele.

Voordele

  • Werk vinniger as die XLOOKUP -funksie.
  • Beskikbaar in die ou Excel weergawes.

Nadele

  • Kan nie foute hanteer wanneer geen passing gevind word nie.
  • Moet die soek-skikking gesorteer word vir benaderde passings.
  • Gee slegs die eerste waarde terug wanneer veelvuldige waardes ooreenstem met die soekwaarde .

Gevolgtrekking

Uiteindelik is ons aan die einde van ons lang artikel. Hier het ons probeer om 'n vergelykende analise van die XLOOKUP teen die INDEX-MATCH funksies in Excel te skep. Laat weet ons jou insiggewende voorstelle hieroor. Volg ExcelWIKI vir meer tutoriale.

kolom.
  • Terugskikking: Dit is die kolom waaruit die ooreenstemmende waarde van die opsoekwaarde teruggestuur sal word.
  • Opsionele argumente:

    • As_nie_gevind nie : Dit is die waarde wat teruggestuur sal word indien die opsoek-skikking nie die soekwaarde het nie.
    • Match_mode : Dit is 'n getal wat die tipe passing van die lookup_value aandui wat jy wil hê. Dit is 'n opsionele argument. Dit kan vier waardes bevat.
    1. Wanneer dit 0 is, sal XLOOKUP vir 'n presiese passing soek (Verstek).
    2. Wanneer dit 1 is, sal XLOOKUP eers vir 'n presiese passing soek. As 'n presiese passing nie gevind word nie, sal dit by die volgende kleiner waarde pas.
    3. Wanneer dit -1 is, sal XLOOKUP eers vir 'n presiese passing soek. As 'n presiese passing nie gevind word nie, sal dit ooreenstem met die volgende groter waarde.
    4. Wanneer dit 2 is, sal XLOOKUP eers vir 'n benaderde passing soek deur Wildcards ( Slegs van toepassing vir string-opsoekwaardes).
    • Soekmodus : Dit is 'n getal wat die tipe soekbewerking aandui wat op die opsoek_skikking uitgevoer word. Dit is ook opsioneel. Dit kan ook vier waardes hê:
    1. As dit 1 is, sal XLOOKUP van bo na onder soek in die lookup_array (Verstek).
    2. Wanneer dit -1 is, sal XLOOKUP van onder na bo soek in die
    3. As dit <1 is>2 , XLOOKUP sal abinêre soektog in stygende volgorde.
    4. Wanneer dit -2 is, sal XLOOKUP 'n binêre soektog in dalende volgorde uitvoer.

    Inleiding to INDEX-MATCH Funksies

    Die kombinasie van die INDEX-MATCH funksies word gebruik om 'n waarde van 'n gegewe ligging te haal en dit met die bronreeks te pas.

    Sintaksis:

    =INDEX(skikking,MATCH(lookup_value,lookup_array,match_type),geen_van_kolom)

    Argumente:

    Vir die INDEX-funksie:

    • Skikking : Dit is 'n reeks selle waaruit ons 'n waarde wil onttrek.
    • MATCH(lookup_value,lookup_array,match_type): Dit is die rynommer van die reeks waar die lookup_value ooreenstem met 'n spesifieke waarde in die lookup_array .
    • Getal_kolom: Dit is die nommer van die kolom van die skikking waaruit ons 'n waarde wil terugstuur wat ooreenstem met die opsoekwaarde .

    Vir die MATCH-funksie:

    • Opsoekwaarde: Dit is die waarde waarna ons soek.
    • Looku p_skikking: Dit is die skikking waarin ons soek na die soekwaarde . Dit kan beide 'n ry en 'n kolom wees.
    • Match_type: Dit is 'n heelgetal wat die tipe pasmaat aandui waarna ons soek. Dit is opsioneel.
    1. Wanneer dit -1 is, sal MATCH eers vir 'n presiese passing soek. As 'n presiese passing nie gevind word nie, sal dit soek na die volgende groter waarde (verstek)(teenoor XLOOKUP ).

    Maar die voorwaarde is dat die lookup_array in stygende volgorde gesorteer moet word. Andersins sal dit 'n fout wys.

    1. Wanneer dit 1 is, sal MATCH ook eers vir 'n presiese passing soek. In die geval dat 'n presiese passing nie gevind word nie, sal dit soek na die volgende kleiner waarde (teenoor XLOOKUP ).

    Maar die voorwaarde is dat die lookup_array moet hierdie keer in dalende volgorde gesorteer word. Andersins sal dit 'n fout wys.

    1. Wanneer dit 0 is, sal MATCH vir 'n presiese passing soek.

    Lees meer: ​​ Hoe om spesifieke data in Excel te kies (6 metodes)

    7 vergelykings tussen gebruike van XLOOKUP- en INDEX-MATCH-funksies

    Nou het ons die formule afgebreek, kom ons bespreek 'n paar ooreenkomste en verskille tussen die twee funksies. Voordat ek na die hoofbesprekings gaan, wys ek vir u gerief die hoofpunte in 'n tabel.

    Besprekingspunt Ooreenstemming/Ongelykheid Verduideliking
    Kolomopsoek_skikking Gelykvormigheid Albei ondersteun 'n kolom as die soek-skikking.
    Ry-opsoek-skikking Oorgelykheid Albei ondersteun 'n ry as die opsoek_skikking.
    Geen passing van soekwaarde nie Ongelykheid XLOOKUP het die verstekopstelling opsie vir geen passing van dieopsoek_waarde. Maar die INDEX-MATCH het nie.
    Geskatte passing Gedeeltelike ooreenkoms XLOOKUP kan die volgende kleiner uitvind of die volgende groter waarde wanneer daar geen presiese passing is nie. INDEX-MATCH kan dit ook doen, maar die opsoek_skikking moet in stygende of dalende volgorde gesorteer word.
    Pasende wildkaarte Gelykvormigheid Albei ondersteun bypassende jokertekens.
    Multiple Values ​​Matching Gedeeltelike Ooreenstemming XLOOKUP kan óf die eerste of laaste waarde wanneer veelvuldige waardes ooreenstem. Maar INDEX-MATCH kan net die eerste waarde terugstuur wat ooreenstem.
    Skikkingsformule Gelykvormigheid Albei ondersteun die skikking formule.

    1. XLOOKUP en INDEX-MATCH to Lookup Value in Column

    Daar is 'n ooreenkoms tussen die twee funksies in hierdie aspek. Vir die XLOOKUP en die INDEX-MATCH kan die lookup_array 'n kolom vir beide funksies wees. Hier soek ons ​​die presiese Punte in Fisika van die student se naam in C ell F5 , Jennifer Marlo . Ons wou van bo na onder in die Student Name -kolom soek en " Not Found " terugstuur vir ingeval geen passing gevind is nie.

    • Vir XLOOKUP , pas die formule toe in Sel G5 .
    =XLOOKUP(F5,C5:C16,D5:D16,"Not Found",0,1)

    • Vir INDEX-MATCH , gebruik hierdie formule in SelG5 .
    =INDEX(B5:D16,MATCH(F5,C5:C16,0),3)

    Lees meer: ​​ Hoe om veelvuldige kriteria van verskillende skikkings in Excel te pas

    2. XLOOKUP en INDEX-MATCH na soekwaarde in ry

    Daar is ook 'n ooreenkoms tussen die twee funksies in hierdie aspek . Vir die XLOOKUP en die INDEX-MATCH kan die lookup_array ook 'n ry vir beide funksies wees. Ter illustrasie het ons 'n nuwe datastel met die ID's , Name en Punte in Fisika en Grade .

    Kom ons oorweeg vir 'n oomblik dat dit 'n baie wye datastel is, en ons weet nie wat die nommer van die Graad -kolom is nie. Dan, om 'n spesifieke student se graad uit te vind, moet ons die Opskrif-ry (B4:E4) as die opsoek_skikking en die woord “ Graad ” as die soekwaarde . Ons kan dit bereik deur beide die XLOOKUP en die INDEX-MATCH te gebruik.

    • Om die graad van die 3de student uit te vind , sal die XLOOKUP formule so wees in Sel G5 .
    =XLOOKUP("Grade",B4:E4,B7:E7,"Not Found",0,1)

    • Vir hierdie geval sal die INDEX-MATCH formule wees:
    =INDEX(B5:E16,3,MATCH("Grade",B4:E4,0))

    3. XLOOKUP en INDEX-MATCH Wanneer geen pasmaat gevind word nie

    Die twee funksies verskil in hierdie aspek. As die opsoekwaarde nie ooreenstem met enige waarde in die opsoek-skikking , kan jy 'n vaste waarde stel om teruggestuur te word in XLOOKUP . Om dit te doen, moet jy dit stelwaarde in die if_not_found argument. Aan die ander kant is daar nie so 'n opsie in INDEX-MATCH . Dit sal 'n fout terugstuur. Jy moet die IFERROR-funksie buite gebruik om die fout te hanteer. In die gegewe datastel sal ons die Student Naam met die ID 100 uitvind.

    • Gebruik hiervoor die volgende XLOOKUP -formule in Sel G5 .
    =XLOOKUP(100,B5:B16,C5:C16,"Not Found",0,1)

    • Aan die ander kant, pas hierdie <1 toe>INDEX-MATCH formule.
    =INDEX(B5:E16,MATCH(100,B5:B16,0),2)

    • Soos dit 'n fout gee, sal jy moet 'n IFERROR funksie buite gebruik om hierdie fout te hanteer.
    =IFERROR(INDEX(B5:E16,MATCH(100,B5:B16,0),2),"Not Found")

    Soortgelyke lesings

    • Excel INDEX MATCH om veelvuldige waardes in een sel terug te gee
    • Excel INDEX-MATCH formule om veelvuldige waardes terug te gee Horisontaal
    • Hoe om INDEX-MATCH-formule in Excel te gebruik om veelvuldige resultate te genereer
    • [Vaste!] INDEX MATCH gee nie die korrekte waarde in Excel terug nie (5 redes)
    • Hoe om INDEX MATCH te gebruik in plaas van VLOOKUP in Excel (3 maniere)

    4. XLOOKUP en INDEX-MATCH in Geval van benaderde passings

    Daar is 'n gedeeltelike ooreenkoms tussen die twee funksies in hierdie aspek. In die XLOOKUP funksie, as die lookup_value nie ooreenstem met enige waarde in die lookup_array , kan jy die formule verander om die volgende kleiner of die volgende groter waarde terug te gee . Stel die argument pas_tipe na -1 as jy die volgende kleiner waarde wil hê en stel dit op 1 as jy die volgende groter waarde wil hê.

    Byvoorbeeld , sal ons die student met 'n punt van 50 of die volgende groter punt uitvind.

    • Om die waarde te vind, pas hierdie XLOOKUP -formule toe.
    =XLOOKUP(50,D5:D16,C5:C16,"Not Found",1,1)

    • Soos jy kan sien, is daar geen student met 'n punt van 50 . Daarom wys dit die een onmiddellik na 50 , 51 deur Desmond Hayes .

    Daar is dieselfde opsie in die INDEX-MATCH formule. Maar die tekortkoming is dat jy die lookup_array in dalende volgorde moet sorteer as jy die volgende groter waarde wil hê. Andersins sal dit 'n fout terugstuur. En om die volgende kleiner waarde te kry, moet jy in stygende volgorde sorteer.

    • Voeg eerstens hierdie formule in Sel G5 in.
    =INDEX(B5:E16,MATCH(50,D5:D16,-1),2)

    • Gevolglik sal jy sien dat die resultaat 'n #N/A -fout toon .
    • Daarom, sorteer die Selreeks D5:D16 in stygende volgorde en jy sal die korrekte waarde kry.

    Spesiale Nota:In die XLOOKUP-funksie werk -1vir die volgende kleiner waarde, maar in INDEX-MATCH, -1werk vir die volgende groter waarde. Net so in die XLOOKUP-funksie werk 1 vir die volgende groter waarde, maar in INDEX-MATCH werk 1vir die volgende kleiner waarde.

    Lees meer: ​​ Hoe om te gebruikINDEKS en Pas vir gedeeltelike passing (2 maniere)

    5. XLOOKUP en INDEX-MATCH in die geval van ooreenstemmende jokertekens

    Daar is 'n ooreenkoms tussen die twee funksies in hierdie aspek. Die XLOOKUP en die INDEX-MATCH , beide ondersteun Wildcards . Hier sal ons enige student met " Marlo " as die tweede naam uitvind. Kom ons volg die stappe hieronder om XLOOKUP teen INDEX-MATCH vergelyking te sien.

    • Pas eerstens hierdie XLOOKUP -formule toe in Sel G5 om die uitset te kry.
    =XLOOKUP("*Marlo*",C5:C16,C5:C16,"Not Found",2,1)

    Let wel:Om jokertekens in XLOOKUPte gebruik, moet jy die passing_type-argument op 2stel. Andersins sal dit nie werk nie.

    • Aan die ander kant sal die INDEX-MATCH formule om dieselfde taak te verrig so wees.
    =INDEX(B5:E16,MATCH("*Marlo*",C5:C16,0),2)

    Lees meer: ​​ INDEX MATCH Veelvuldige kriteria met jokerteken in Excel ('n Volledige gids )

    6. XLOOKUP en INDEX-MATCH Wanneer veelvuldige waardes ooreenstem met opsoekwaarde

    Hierdie voorbeeld wys XLOOKUP vs INDEX-MATCH wanneer veelvuldige waardes pas by die opsoekwaarde. Daar is ook 'n gedeeltelike ooreenkoms tussen die twee funksies in hierdie verband. Die XLOOKUP en die INDEX-MATCH gee albei slegs een waarde terug in geval veelvuldige waardes in die opsoek-skikking ooreenstem met die soekwaarde . Maar in die XLOOKUP -funksie kan jy die soektog verander om óf die

    Hugh West is 'n hoogs ervare Excel-afrigter en ontleder met meer as 10 jaar ondervinding in die bedryf. Hy het 'n Baccalaureusgraad in Rekeningkunde en Finansies en 'n Meestersgraad in Besigheidsadministrasie. Hugh het 'n passie vir onderrig en het 'n unieke onderrigbenadering ontwikkel wat maklik is om te volg en te verstaan. Sy kundige kennis van Excel het duisende studente en professionele persone wêreldwyd gehelp om hul vaardighede te verbeter en uit te blink in hul loopbane. Deur sy blog deel Hugh sy kennis met die wêreld, en bied gratis Excel-tutoriale en aanlyn opleiding aan om individue en besighede te help om hul volle potensiaal te bereik.