XLOOKUP супраць INDEX-MATCH у Excel (усе магчымыя параўнанні)

  • Падзяліцца Гэтым
Hugh West

Сёння я правяду параўнальны аналіз функцый XLOOKUP і INDEX-MATCH у Excel . У больш ранніх версіях Excel мы выкарыстоўвалі функцыі HLOOKUP , VLOOKUP і INDEX-MATCH для пошуку пэўнае значэнне ў дыяпазоне вочак. Аднак са з'яўленнем Office 365 Excel даў нам новую дынамічную функцыю пад назвай XLOOKUP для больш складанага выканання падобнай аперацыі. У гэтым артыкуле я паспрабую параўнаць шырока выкарыстоўваюцца функцыі, XLOOKUP і INDEX-MATCH .

Спампаваць Практычны сшытак

Атрымайце гэты ўзор файла для лепшага разумення.

XLOOKUP супраць INDEX-MATCH Functions.xlsx

Уводзіны ў функцыю XLOOKUP

Функцыя XLOOKUP выкарыстоўваецца для пошуку пэўнага значэння ў дыяпазоне вочак або масіве. Пасля гэтага ён вяртае адпаведнае першае супадзенне. Ён таксама паказвае найбольш блізкае або прыблізнае супадзенне, калі дакладнага супадзення няма.

Сінтаксіс:

=XLOOKUP(значэнне_пошуку,масіў_пошуку,масіў_вяртання,[калі_не_знойдзена] ,[match_mode],[search_mode])

Аргументы:

  • Lookup_value : гэта значэнне, якое мы пошук у пэўным слупку дыяпазону.
  • Lookup_array : гэта масіў, у якім мы шукаем lookup_value . Можа быць як шэрагам, так іпершы або апошні матч. Каб атрымаць першае адпаведнае значэнне, усталюйце для аргумента search_type 1 . А каб атрымаць апошняе адпаведнае значэнне, усталюйце для аргумента search_type -1 . Але ў INDEX-MATCH у вас няма выбару. Вы атрымаеце толькі першае адпаведнае значэнне.
  • Каб атрымаць першага студэнта, які атрымаў 100 , вы можаце выкарыстоўваць гэту формулу XLOOKUP у Ячэйка G5 .
=XLOOKUP(100,D5:D16,C5:C16,"Not Found",0,1)

  • Разам з ёй вы атрымаеце апошняга студэнта з 100 з дапамогай гэтай формулы XLOOKUP .
=XLOOKUP(100,D5:D16,C5:C16,"Not Found",0,-1)

  • Наадварот, вы атрымаеце толькі першае значэнне, якое адпавядае гэтай формуле INDEX-MATCH .
=INDEX(B5:E16,MATCH(100,D5:D16,0),2)

7. XLOOKUP і INDEX-MATCH у выпадку некалькіх пошукавых значэнняў

У гэтым прыкладзе мы прадэманструем XLOOKUP супраць INDEX-MATCH у выпадку некалькіх значэнняў пошуку. У гэтым плане існуе падабенства паміж дзвюма функцыямі. Абодва дазваляюць некалькі lookup_values (формула масіву).

  • Для функцыі XLOOKUP працуе наступная формула.
=XLOOKUP(G5:G8,B5:B16,E5:E16,"Not Found",0,1)

  • Тады для INDEX-MATCH таксама будзе працаваць наступная функцыя.
=INDEX(B5:E16,MATCH(G5:G8,B5:B16,0),4)

Перавагі & Недахопы функцыі XLOOKUP

Ёсць пэўныя перавагі і недахопы выкарыстання функцыі XLOOKUP . Давайце паглядзім іх коратка.

Перавагі

  • Устанавіць значэнне па змаўчанні для адсутнасці супадаючых выпадкаў.
  • Можа шукаць прыблізныя супадзенні без сартавання lookup_array .
  • Мець доступ для пошуку як з першай, так і з апошняй ячэйкі lookup_array .

Недахопы

  • Працуе павольней, чым INDEX-MATCH Функцыя .
  • Даступна толькі ў Office 365 .

Перавагі & Недахопы функцый INDEX-MATCH

Функцыя INDEX-MATCH таксама мае некаторыя з наступных плюсаў і мінусаў.

Перавагі

  • Працуе хутчэй, чым функцыя XLOOKUP .
  • Даступна ў старых Excel версіях.

Недахопы

  • Немагчыма апрацаваць памылкі, калі супадзенне не знойдзена.
  • Неабходна lookup_array адсартаваць для прыблізных супадзенняў.
  • Вяртае толькі першае значэнне, калі некалькі значэнняў супадаюць з lookup_value .

Выснова

Нарэшце, мы падышлі да канца нашага доўгага артыкула. Тут мы паспрабавалі правесці параўнальны аналіз функцый XLOOKUP у параўнанні з INDEX-MATCH у Excel. Дайце нам ведаць вашыя праніклівыя прапановы па гэтым пытанні. Сачыце за ExcelWIKI для атрымання дадатковых падручнікаў.

слупок.
  • Return_array: Гэта слупок, з якога будзе вернута адпаведнае значэнне lookup_value .
  • Неабавязковыя аргументы:

    • If_not_found : гэта значэнне, якое будзе вернута ў выпадку, калі lookup_array не мае lookup_value.
    • Match_mode : гэта лічба, якая пазначае тып супадзення жаданага lookup_value . Гэта неабавязковы аргумент. Ён можа ўтрымліваць чатыры значэнні.
    1. Калі ён роўны 0 , XLOOKUP будзе шукаць дакладнае супадзенне (па змаўчанні).
    2. Калі гэта 1 , XLOOKUP спачатку будзе шукаць дакладнае супадзенне. Калі дакладнае супадзенне не знойдзена, яно будзе адпавядаць наступнаму меншаму значэнню.
    3. Калі -1 , XLOOKUP спачатку будзе шукаць дакладнае супадзенне. Калі дакладнае супадзенне не знойдзена, яно будзе адпавядаць наступнаму большаму значэнню.
    4. Калі яно роўна 2 , XLOOKUP спачатку будзе шукаць прыблізнае супадзенне з выкарыстаннем падстаноўных знакаў ( Дастасавальна толькі для значэнняў пошуку ў радку).
    • Рэжым_пошуку : гэта лік, які пазначае тып аперацыі пошуку, якая выконваецца ў масіве_пошуку. Гэта таксама неабавязкова. Ён таксама можа мець чатыры значэнні:
    1. Калі гэта 1 , XLOOKUP будзе шукаць зверху ўніз у lookup_array (па змаўчанні).
    2. Калі гэта -1 , XLOOKUP будзе шукаць знізу ўверх у
    3. Калі гэта 2 , XLOOKUP правядзе aдвайковы пошук у парадку ўзрастання.
    4. Калі -2 , XLOOKUP будзе праводзіць двайковы пошук у парадку змяншэння.

    Уводзіны да функцый INDEX-MATCH

    Камбінацыя функцый INDEX-MATCH выкарыстоўваецца для атрымання значэння з зададзенага месца і супастаўлення яго з зыходным дыяпазонам.

    Сінтаксіс:

    =ІНДЭКС(масіў,СУПАВЕДЗЕННЕ(значэнне_прагляду,масіў_супадзення,тып_супадзення),нумар_слупка)

    Аргументы:

    Для функцыі INDEX:

    • Масіў : гэта дыяпазон ячэек, з якіх мы хочам атрымаць значэнне.
    • MATCH(lookup_value,lookup_array,match_type): Гэта нумар радка дыяпазону, дзе lookup_value супадае з пэўным значэннем у lookup_array .
    • No_of_column: Гэта нумар слупка масіва, з якога мы хочам вярнуць значэнне, адпаведнае lookup_value .

    Для функцыі MATCH:

    • Lookup_value: Гэта значэнне, якое мы шукаем.
    • Looku p_array: Гэта масіў, у якім мы шукаем lookup_value . Гэта можа быць як радок, так і слупок.
    • Тып_супадзення: Гэта цэлае лік, якое пазначае тып супадзення, якое мы шукаем. Гэта неабавязкова.
    1. Калі -1 , MATCH спачатку будзе шукаць дакладнае супадзенне. Калі дакладнае супадзенне не знойдзена, будзе шукацца наступнае большае значэнне (па змаўчанні)(супрацьлегласць XLOOKUP ).

    Але ўмова заключаецца ў тым, што масіў_прагляду павінен быць адсартаваны ў парадку ўзрастання. У адваротным выпадку будзе паказана памылка.

    1. Калі гэта 1 , MATCH таксама спачатку будзе шукаць дакладнае супадзенне. У выпадку, калі дакладнае супадзенне не знойдзена, будзе шукацца наступнае меншае значэнне (супрацьлеглае XLOOKUP ).

    Але ўмова заключаецца ў тым, што lookup_array на гэты раз трэба адсартаваць у парадку змяншэння. У адваротным выпадку будзе паказана памылка.

    1. Калі 0 , MATCH будзе шукаць дакладнае супадзенне.

    Больш падрабязна: Як выбраць пэўныя даныя ў Excel (6 метадаў)

    7 параўнанняў паміж выкарыстаннем функцый XLOOKUP і INDEX-MATCH

    Цяпер мы разбілі формулу, давайце абмяркуем некаторыя падабенствы і адрозненні паміж дзвюма функцыямі. Перш чым перайсці да асноўных абмеркаванняў, я пакажу асноўныя моманты ў табліцы для вашай зручнасці.

    Пункт абмеркавання Падабенства/непадабенства Тлумачэнне
    Падабенства_масіва Падабенства Абодва падтрымліваюць слупок як lookup_array.
    Row lookup_array Падабенства Абодва падтрымліваюць радок як lookup_array.
    Няма супадзення lookup_value Непадабенства XLOOKUP мае параметр налады па змаўчанні для адсутнасці супадзенняшуканае_значэнне. Але INDEX-MATCH не мае.
    Прыблізнае супадзенне Частковае падабенства XLOOKUP можа знайсці наступнае меншае або наступнае большае значэнне, калі няма дакладнага супадзення. INDEX-MATCH таксама можа зрабіць гэта, але lookup_array павінен быць адсартаваны ў парадку ўзрастання або змяншэння.
    Супадзенне падстаноўных знакаў Падабенства Абодва падтрымліваюць супадзенне падстаноўных знакаў.
    Супадзенне некалькіх значэнняў Частковае падабенства XLOOKUP можа знайсці альбо першае або апошняе значэнне, калі супадае некалькі значэнняў. Але INDEX-MATCH можа вярнуць толькі першае адпаведнае значэнне.
    Формула масіва Падабенства Абодва падтрымліваюць масіў формула.

    1. XLOOKUP і INDEX-MATCH для пошукавага значэння ў слупку

    У гэтым аспекце паміж дзвюма функцыямі ёсць падабенства. Для XLOOKUP і INDEX-MATCH , lookup_array можа быць слупком для абедзвюх функцый. Тут мы шукаем дакладныя адзнакі па фізіцы імя студэнта ў C ell F5 , Джэніфер Марла . Мы хацелі правесці пошук зверху ўніз у слупку Імя студэнта і вярнуць « Не знойдзена », калі супадзенне не знойдзена.

    • Для XLOOKUP , прымяніце формулу ў Cell G5 .
    =XLOOKUP(F5,C5:C16,D5:D16,"Not Found",0,1)

    • Для INDEX-MATCH выкарыстоўвайце гэту формулу ў CellG5 .
    =INDEX(B5:D16,MATCH(F5,C5:C16,0),3)

    Больш падрабязна: Як супаставіць некалькі крытэрыяў з розных масіваў у Excel

    2. XLOOKUP і INDEX-MATCH да пошукавага значэння ў радку

    У гэтым аспекце паміж дзвюма функцыямі таксама ёсць падабенства . Для XLOOKUP і INDEX-MATCH lookup_array таксама можа быць радком для абедзвюх функцый. Для ілюстрацыі ў нас ёсць новы набор даных з ідэнтыфікатарамі , імёнамі і адзнакамі па фізіцы і ацэнкамі .

    Давайце на імгненне разгледзім, што гэта вельмі шырокі набор даных, і мы не ведаем, які нумар у слупку Ацэнка . Затым, каб даведацца ацэнку канкрэтнага студэнта, мы павінны выкарыстоўваць Радок загалоўка (B4:E4) у якасці масіва пошуку і слова « Ацэнка » у якасці значэння пошуку . Мы можам зрабіць гэта з дапамогай XLOOKUP і INDEX-MATCH .

    • Каб даведацца пра адзнаку 3-га студэнта , формула XLOOKUP будзе такой у Cell G5 .
    =XLOOKUP("Grade",B4:E4,B7:E7,"Not Found",0,1)

    • У гэтым выпадку формула INDEX-MATCH будзе:
    =INDEX(B5:E16,3,MATCH("Grade",B4:E4,0))

    3. XLOOKUP і INDEX-MATCH, калі супадзенняў не знойдзена

    Гэтыя дзве функцыі адрозніваюцца ў гэтым аспекце. Калі lookup_value не адпавядае ніводнаму значэнню ў lookup_array , вы можаце ўсталяваць фіксаванае значэнне, якое будзе вяртацца ў XLOOKUP . Каб зрабіць гэта, вы павінны ўсталяваць гэтазначэнне ў аргуменце if_not_found . З іншага боку, такой опцыі няма ў INDEX-MATCH . Ён верне памылку. Вы павінны выкарыстоўваць функцыю IFERROR звонку, каб апрацаваць памылку. У дадзеным наборы даных мы знойдзем імя студэнта з ідэнтыфікатарам 100 .

    • Для гэтага выкарыстоўвайце наступную формулу XLOOKUP у Ячэйка G5 .
    =XLOOKUP(100,B5:B16,C5:C16,"Not Found",0,1)

    • З іншага боку, прымяніце гэта INDEX-MATCH формула.
    =INDEX(B5:E16,MATCH(100,B5:B16,0),2)

    • Паколькі яна вяртае памылку, вы трэба выкарыстоўваць IFERROR функцыю звонку, каб апрацаваць гэтую памылку.
    =IFERROR(INDEX(B5:E16,MATCH(100,B5:B16,0),2),"Not Found")

    Падобныя паказанні

    • Excel INDEX MATCH для вяртання некалькіх значэнняў у адной ячэйцы
    • Excel INDEX-MATCH Формула для вяртання некалькіх значэнняў Па гарызанталі
    • Як выкарыстоўваць формулу INDEX-MATCH у Excel для генерацыі некалькіх вынікаў
    • [Выпраўлена!] INDEX MATCH не вяртае правільнае значэнне ў Excel (5 прычын)
    • Як выкарыстоўваць INDEX MATCH замест VLOOKUP у Excel (3 спосабы)

    4. XLOOKUP і INDEX-MATCH у Выпадак прыблізных супадзенняў

    У гэтым аспекце паміж дзвюма функцыямі ёсць частковае падабенства. У функцыі XLOOKUP , калі lookup_value не адпавядае ніводнаму значэнню ў lookup_array , вы можаце змяніць формулу, каб вярнуць наступнае меншае або наступнае большае значэнне . Усталюйце аргумент match_type да -1 калі вы хочаце наступнае меншае значэнне і ўсталюйце яго ў 1 калі вы хочаце наступнае большае значэнне.

    Напрыклад , мы знойдзем студэнта з адзнакай 50 або наступнай большай адзнакай.

    • Каб знайсці значэнне, прымяніце гэту формулу XLOOKUP .
    =XLOOKUP(50,D5:D16,C5:C16,"Not Found",1,1)

    • Як бачыце, няма ніводнага студэнта з адзнакай 50 . Вось чаму ён паказвае адразу пасля 50 , 51 ад Дэзманда Хэйза .

    Такая ж опцыя ёсць у Формула INDEX-MATCH . Але недахоп у тым, што вы павінны сартаваць lookup_array у парадку змяншэння, калі вы хочаце наступнае большае значэнне. У адваротным выпадку ён верне памылку. А каб атрымаць наступнае меншае значэнне, трэба сартаваць у парадку ўзрастання.

    • Перш за ўсё, устаўце гэту формулу ў Вочка G5 .
    =INDEX(B5:E16,MATCH(50,D5:D16,-1),2)

    • У выніку вы ўбачыце, што вынік паказвае памылку #N/A .
    • Такім чынам, адсартуйце дыяпазон вочак D5:D16 у парадку ўзрастання, і вы атрымаеце правільнае значэнне.

    Асаблівая заўвага:У функцыі XLOOKUP -1працуе для наступнага меншага значэння, але ў INDEX-MATCH, -1працуе для наступнага большага значэння. Падобным чынам у функцыі XLOOKUP1 працуе для наступнага большага значэння, але ў INDEX-MATCH 1працуе для наступнага меншага значэння.

    Больш падрабязна: Як выкарыстоўвацьINDEX і супадзенне для частковага супадзення (2 спосабы)

    5. XLOOKUP і INDEX-MATCH у выпадку супадзення падстаноўных знакаў

    У гэтым аспекце паміж дзвюма функцыямі ёсць падабенства. XLOOKUP і INDEX-MATCH абодва падтрымліваюць знакі падстаноўкі . Тут мы знойдзем любога студэнта з « Марла » у якасці другога імя. Давайце выканаем крокі ніжэй, каб убачыць параўнанне XLOOKUP з INDEX-MATCH .

    • Па-першае, прымяніце гэту формулу XLOOKUP у Ячэйка G5 для атрымання вываду.
    =XLOOKUP("*Marlo*",C5:C16,C5:C16,"Not Found",2,1)

    Заўвага:Каб выкарыстоўваць падстаноўныя знакі ў XLOOKUP, вы павінны ўсталяваць аргумент match_typeу 2. Інакш гэта не спрацуе.

    • З іншага боку, формула INDEX-MATCH для выканання той жа задачы будзе такой.
    =INDEX(B5:E16,MATCH("*Marlo*",C5:C16,0),2)

    Дадатковая інфармацыя: ІНДЭКСНАЕ СУПАДЗЕННЕ Некалькі крытэрыяў з падстаноўкай у Excel (поўнае кіраўніцтва )

    6. XLOOKUP і INDEX-MATCH, калі некалькі значэнняў супадаюць з пошукавым значэннем

    Гэты прыклад паказвае XLOOKUP супраць INDEX-MATCH калі некалькі значэнняў адпавядаюць значэнню пошуку. У гэтым плане таксама існуе частковае падабенства паміж дзвюма функцыямі. XLOOKUP і INDEX-MATCH вяртаюць толькі адно значэнне ў выпадку, калі некалькі значэнняў у lookup_array супадаюць з lookup_value . Але ў функцыі XLOOKUP вы можаце змяніць пошук, каб атрымаць альбо

    Х'ю Уэст з'яўляецца вельмі дасведчаным трэнерам і аналітыкам Excel з больш чым 10-гадовым вопытам работы ў галіны. Ён мае ступень бакалаўра ў галіне бухгалтарскага ўліку і фінансаў і ступень магістра дзелавога адміністравання. Х'ю захапляецца навучаннем і распрацаваў унікальны падыход да навучання, які лёгка прытрымлівацца і зразумець. Яго экспертныя веды Excel дапамаглі тысячам студэнтаў і спецыялістаў па ўсім свеце палепшыць свае навыкі і атрымаць поспех у сваёй кар'еры. Праз свой блог Х'ю дзеліцца сваімі ведамі з усім светам, прапаноўваючы бясплатныя падручнікі па Excel і онлайн-трэнінгі, каб дапамагчы прыватным асобам і прадпрыемствам цалкам раскрыць свой патэнцыял.