Функцыя Excel MATCH з прыкладамі формул

  • Падзяліцца Гэтым
Michael Brown

Гэты падручнік тлумачыць, як выкарыстоўваць функцыю MATCH у Excel з прыкладамі формул. Гэта таксама паказвае, як палепшыць формулы пошуку шляхам стварэння дынамічнай формулы з VLOOKUP і MATCH.

У Microsoft Excel ёсць шмат розных функцый пошуку/даведкі, якія могуць дапамагчы вам знайсці пэўнае значэнне ў дыяпазон вочак, і MATCH - адна з іх. Па сутнасці, ён вызначае адноснае становішча элемента ў дыяпазоне вочак. Аднак функцыя MATCH можа зрабіць значна больш, чым яе чыстая сутнасць.

    Функцыя MATCH Excel - сінтаксіс і выкарыстанне

    Функцыя MATCH у Excel шукае зададзенае значэнне ў дыяпазон ячэек і вяртае адносную пазіцыю гэтага значэння.

    Сінтаксіс функцыі MATCH наступны:

    MATCH(значэнне_пошуку, масіў_супадзення, [тып_супадзення])

    значэнне_пошуку (абавязкова) - значэнне, якое вы хочаце знайсці. Гэта можа быць лікавае, тэкставае або лагічнае значэнне, а таксама спасылка на ячэйку.

    Масіў_прагляду (абавязкова) - дыяпазон ячэек для пошуку.

    Match_type (неабавязкова) - вызначае тып супадзення. Гэта можа быць адно з наступных значэнняў: 1, 0, -1. Аргумент match_type, усталяваны ў 0, вяртае толькі дакладнае супадзенне, у той час як два іншых тыпу дазваляюць прыблізнае супадзенне.

    • 1 або апушчана (па змаўчанні) - знайсці самае вялікае значэнне ў пошукавы масіў, меншы або роўны шуканаму значэнню. Патрабуецца сартаванне масіва пошуку ў парадку ўзрастання,працоўны сшытак для спампоўкі

      Прыклады формул MATCH у Excel (файл .xlsx)

      ад найменшага да найбольшага або ад А да Z.
    • 0 - знайсці першае значэнне ў масіве, якое дакладна роўна шуканаму значэнню. Сартаванне не патрабуецца.
    • -1 - знайсці найменшае значэнне ў масіве, якое большае або роўнае шуканаму значэнню. Пошукавы масіў павінен быць адсартаваны ў парадку змяншэння, ад самага вялікага да меншага або ад Z да A.

    Каб лепш зразумець функцыю MATCH, давайце створым простую формулу на аснове гэтых даных: імёны студэнтаў у слупку А і іх экзаменацыйныя балы ў слупку B, адсартаваныя ад большага да меншага. Каб даведацца, дзе канкрэтны студэнт (скажам, Лора ) сярод іншых, выкарыстайце гэтую простую формулу:

    =MATCH("Laura", A2:A8, 0)

    Па жаданні вы можаце змясціць пошукавае значэнне ў некаторыя ячэйку (E1 у гэтым прыкладзе) і спасылайцеся на гэтую ячэйку ў сваёй формуле супадзення Excel:

    =MATCH(E1, A2:A8, 0)

    Як вы бачыце на скрыншоце вышэй, імёны студэнтаў уводзяцца ў адвольным парадку, і таму мы ўсталёўваем аргумент match_type у 0 (дакладнае супадзенне), таму што толькі гэты тып супадзення не патрабуе сартавання значэнняў у масіве пошуку. Тэхнічна формула Match вяртае адноснае становішча Лауры ў дыяпазоне. Але паколькі балы адсартаваны ад большага да найменшага, гэта таксама кажа нам, што ў Лауры 5-ы лепшы бал сярод усіх студэнтаў.

    Падказка. У Excel 365 і Excel 2021 вы можаце выкарыстоўваць функцыю XMATCH, якая з'яўляецца сучаснай і больш магутнай пераемніцайMATCH.

    4 рэчы, якія вы павінны ведаць пра функцыю MATCH

    Як вы толькі што бачылі, выкарыстоўваць MATCH у Excel лёгка. Аднак, як і ў выпадку практычна з любой іншай функцыяй, ёсць некалькі асаблівасцей, пра якія вы павінны ведаць:

    1. функцыя MATCH вяртае адносную пазіцыю значэння пошуку у масіве, а не ў самім значэнні.
    2. MATCH неадчувальны да рэгістра , што азначае, што ён не адрознівае малыя і вялікія сімвалы пры працы з тэкставымі значэннямі.
    3. Калі масіў пошуку змяшчае некалькі ўваходжанняў значэння пошуку, вяртаецца пазіцыя першага значэння.
    4. Калі значэнне пошуку не знойдзена ў масіве пошуку, вяртаецца памылка #N/A.

    Як выкарыстоўваць MATCH у Excel - прыклады формул

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

    Частковае супадзенне з падстаноўнымі знакамі

    Як і многія іншыя функцыі, MATCH разумее наступныя падстаноўныя сімвалы:

    • Пытальнік (?) - замяняе любы асобны сімвал
    • Зорачка (*) - замяняе любы s роўнасць сімвалаў

    Заўвага. Падстаноўныя знакі можна выкарыстоўваць толькі ў формулах супадзення з match_type , усталяваным у 0.

    Формула супадзення з падстаноўнымі знакамі карысная ў сітуацыях, калі вы хочаце знайсці супадзенне не ўсяго тэкставага радка, а толькі некаторых сімвалаў або некаторай часткі радка.Каб праілюстраваць гэты момант, разгледзім наступны прыклад.

    Выкажам здагадку, што ў вас ёсць спіс рэгіянальных пасярэднікаў і іх лічбы продажаў за мінулы месяц. Вы жадаеце знайсці адносную пазіцыю пэўнага пасярэдніка ў спісе (адсартаванага па аб'ёмах продажаў у парадку змяншэння), але вы не можаце дакладна ўспомніць яго імя, хоць памятаеце некалькі першых сімвалаў.

    Мяркуючы, што пасярэднік імёны знаходзяцца ў дыяпазоне A2:A11, і вы шукаеце назву, якая пачынаецца з «аўтамабіль», формула выглядае наступным чынам:

    =MATCH("car*", A2:A11,0)

    Каб зрабіць нашу формулу супадзення больш універсальнай, вы можаце ўвесці пошукавае значэнне ў нейкую ячэйку (E1 у гэтым прыкладзе) і аб'яднаць гэтую ячэйку сімвалам падстаноўкі, напрыклад:

    =MATCH(E1&"*", A2:A11,0)

    Як паказана на скрыншоце ніжэй, формула вяртае 2, што з'яўляецца пазіцыяй "Carter":

    Каб замяніць толькі адзін сімвал у значэнні пошуку, выкарыстоўвайце "?" аператар падстаноўкі, напрыклад:

    =MATCH("ba?er", A2:A11,0)

    Прыведзеная вышэй формула будзе адпавядаць імені " Бейкер " і паўторна выканаць яго адносную пазіцыю, якая роўная 5.

    Формула MATCH з улікам рэгістра

    Як згадвалася ў пачатку гэтага падручніка, функцыя MATCH не адрознівае вялікія і малыя літары. Каб стварыць формулу супадзення з улікам рэгістра, выкарыстоўвайце СУПАДПАВЕДЗЕННЕ ў спалучэнні з функцыяй EXACT, якая дакладна параўноўвае ячэйкі, уключаючы рэгістр сімвалаў.

    Вось агульная формула супадзення з улікам рэгістра.дадзеныя:

    MATCH(TRUE, EXACT( масіў пошуку , значэнне пошуку ), 0)

    Формула працуе з наступнай логікай:

    • Функцыя EXACT параўноўвае значэнне пошуку з кожным элементам масіва пошуку. Калі параўноўваныя ячэйкі цалкам роўныя, функцыя вяртае TRUE, у адваротным выпадку FALSE.
    • І затым функцыя MATCH параўноўвае TRUE (якое з'яўляецца яе lookup_value ) з кожным значэннем у масіве, вернутым EXACT і вяртае пазіцыю першага супадзення.

    Калі ласка, майце на ўвазе, што гэта формула масіва, для правільнага завяршэння якой патрабуецца націснуць Ctrl + Shift + Enter.

    Мяркуючы, што ваш пошукавае значэнне знаходзіцца ў ячэйцы E1, а пошукавы масіў — A2:A9, формула выглядае наступным чынам:

    =MATCH(TRUE, EXACT(A2:A9,E1),0)

    На наступным здымку экрана паказана адчувальная да рэгістра формула супадзення ў Excel:

    Параўнаць 2 слупкі на супадзенні і адрозненні (ISNA MATCH)

    Праверка двух спісаў на супадзенні і адрозненні з'яўляецца адной з самых распаўсюджаных задач у Excel, і гэта можа быць робіцца рознымі спосабамі. Формула ISNA/MATCH - адна з іх:

    IF(ISNA(MATCH( 1st value in List1 , List2 , 0)), "Not in List 1", " ")

    Для любога значэння спісу 2, якога няма ў спісе 1, формула вяртае " Не ў спісе 1 ". І вось як:

    • Функцыя MATCH шукае значэнне са спісу 1 у спісе 2. Калі значэнне знойдзена, яно вяртае яго адносную пазіцыю, памылка #N/Aінакш.
    • Функцыя ISNA ў Excel робіць толькі адно - правярае памылкі #N/A (што азначае "недаступна"). Калі зададзенае значэнне з'яўляецца памылкай #N/A, функцыя вяртае TRUE, у адваротным выпадку FALSE. У нашым выпадку TRUE азначае, што значэнне са спісу 1 не знойдзена ў спісе 2 (г.зн. MATCH вяртае памылку #N/A).
    • Таму што вашы карыстальнікі могуць збіцца з панталыку бачыць TRUE для значэнняў, якія не з'яўляюцца ў спісе 1, вы абгартаеце функцыю IF вакол ISNA, каб замест гэтага адлюстраваць " Не ў спісе 1 " або любы іншы тэкст, які хочаце.

    Напрыклад , каб параўнаць значэнні ў слупку B са значэннямі ў слупку A, формула прымае наступную форму (дзе B2 — самая верхняя ячэйка):

    =IF(ISNA(MATCH(B2,A:A,0)), "Not in List 1", "")

    Як вы памятаеце, функцыя MATCH у Excel сам па сабе неадчувальны да рэгістра. Каб ён адрозніваў рэгістр сімвалаў, убудуйце функцыю EXACT у аргумент lookup_array і не забудзьце націснуць Ctrl + Shift + Enter, каб завяршыць гэту формулу масіву :

    =IF(ISNA(MATCH(TRUE, EXACT(A:A, B2),0)), "Not in List 1", "")

    На наступным скрыншоце паказаны абедзве формулы ў дзеянні:

    Каб даведацца пра іншыя спосабы параўнання двух спісаў у Excel, праглядзіце наступны падручнік: Як каб параўнаць 2 слупкі ў Excel.

    Excel VLOOKUP і MATCH

    У гэтым прыкладзе мяркуецца, што ў вас ужо ёсць некаторыя базавыя веды аб функцыі Excel VLOOKUP. І калі вы гэта зробіце, ёсць верагоднасць, што вы сутыкнуліся з яго шматлікімі абмежаваннямі (падрабязны агляд якіх можа быцьзнойдзены ў раздзеле Чаму Excel VLOOKUP не працуе) і шукаюць больш надзейную альтэрнатыву.

    Адзін з самых раздражняльных недахопаў VLOOKUP заключаецца ў тым, што ён перастае працаваць пасля ўстаўкі або выдалення слупка ў табліцы пошуку. Гэта адбываецца таму, што VLOOKUP выцягвае адпаведнае значэнне на аснове нумара слупка вяртання, які вы ўказваеце (нумар індэкса). Паколькі індэксны нумар "жорстка закадзіраваны" ў формуле, Excel не можа адрэгуляваць яго, калі новы слупок(-і) дадаецца або выдаляецца з табліцы.

    Excel Функцыя MATCH мае справу з адносным становішчам пошукавага значэння, што робіць яе ідэальнай для аргумента col_index_num VLOOKUP. Іншымі словамі, замест таго, каб указваць слупок, які вяртаецца, як статычны лік, вы выкарыстоўваеце MATCH, каб атрымаць бягучую пазіцыю гэтага слупка.

    Каб зрабіць усё прасцей для разумення, давайце зноў скарыстаемся табліцай з вынікамі экзаменаў студэнтаў. (падобна той, якую мы выкарыстоўвалі ў пачатку гэтага падручніка), але на гэты раз мы будзем атрымліваць рэальны бал, а не яго адносную пазіцыю.

    Пры ўмове, што пошукавае значэнне знаходзіцца ў ячэйцы F1, таблічны масіў будзе $A$1:$C$2 (гэта добрая практыка, каб заблакіраваць яго з дапамогай абсалютных спасылак на ячэйкі, калі вы плануеце скапіяваць формулу ў іншыя ячэйкі), формула выглядае наступным чынам:

    =VLOOKUP(F1, $A$1:$C$8, 3, FALSE)

    3-ці аргумент ( col_index_num ) усталяваны ў 3, таму што Math Score , які мы хочам атрымаць, з'яўляецца 3-м слупком устол. Як вы бачыце на скрыншоце ніжэй, гэтая звычайная формула Vlookup працуе добра:

    Але толькі пакуль вы не ўставіце або не выдаліце ​​слупок(-і):

    Такім чынам, чаму #REF! памылка? Паколькі col_index_num усталяваны ў 3, кажа Excel атрымаць значэнне з трэцяга слупка, у той час як цяпер ёсць толькі 2 слупкі ў таблічным масіве.

    Каб прадухіліць такія рэчы, вы можаце зрабіць ваша формула Vlookup стане больш дынамічнай, уключыўшы наступную функцыю супадзення:

    MATCH(E2,A1:C1,0)

    Дзе:

    • E2 - гэта значэнне пошуку, якое дакладна роўна да назвы слупка вяртання, г.зн. слупка, з якога вы хочаце атрымаць значэнне ( Math Score у гэтым прыкладзе).
    • A1:C1 - гэта масіў пошуку, які змяшчае загалоўкі табліцы.

    А цяпер уключыце гэтую функцыю Match у аргумент col_index_num вашай формулы Vlookup, напрыклад:

    =VLOOKUP(F1,$A$1:$C$8, MATCH(E2,$A$1:$C$1, 0), FALSE)

    І пераканайцеся, што гэта працуе бездакорна, незалежна ад таго, колькі слупкоў вы дадаеце або выдаліце:

    На скрыншоце вышэй я заблакіраваў усе спасылкі на ячэйкі, каб формула працавала правільна, нават калі мая карыстальнікі перамяшчаюць яго ў іншае месца на аркушы. Як вы бачыце на скрыншоце ніжэй, формула выдатна працуе пасля выдалення слупка; акрамя таго, Excel дастаткова разумны, каб належным чынам наладзіць абсалютныя спасылкі ў гэтым выпадку:

    Excel HLOOKUP і MATCH

    Аналагічным чынам вы можаце выкарыстоўваць Excel MATCH функцыя дапалепшыць свае формулы HLOOKUP. Агульны прынцып па сутнасці такі ж, як і ў выпадку Vlookup: вы выкарыстоўваеце функцыю Match, каб атрымаць адносную пазіцыю слупка, які вяртаецца, і дадаеце гэты лік у аргумент row_index_num вашай формулы Hlookup.

    Калі выказаць здагадку, што пошукавае значэнне знаходзіцца ў ячэйцы B5, таблічны масіў B1:H3, імя вяртанага радка (шукальнае значэнне для MATCH) знаходзіцца ў ячэйцы A6, а загалоўкі радкоў A1:A3, поўная формула выглядае наступным чынам:

    =HLOOKUP(B5, B1:H3, MATCH(A6, A1:A3, 0), FALSE)

    Як вы толькі што бачылі, камбінацыя Hlookup/Vlookup & Супадзенне, безумоўна, з'яўляецца паляпшэннем у параўнанні са звычайнымі формуламі Hlookup і Vlookup. Аднак функцыя MATCH не ліквідуе ўсіх іх абмежаванняў. У прыватнасці, формула Vlookup Match па-ранейшаму не можа глядзець злева, і Hlookup Match не можа шукаць ні ў адным радку, акрамя самага верхняга.

    Каб пераадолець вышэйзгаданыя (і некаторыя іншыя) абмежаванні, разгледзьце магчымасць выкарыстання камбінацыя INDEX MATCH, якая забяспечвае сапраўды магутны і універсальны спосаб пошуку ў Excel, пераўзыходзячы Vlookup і Hlookup па многіх параметрах. Падрабязныя інструкцыі і прыклады формул можна знайсці ў INDEX & MATCH у Excel - лепшая альтэрнатыва VLOOKUP.

    Вось як вы выкарыстоўваеце формулы MATCH у Excel. Будзем спадзявацца, што прыклады, разгледжаныя ў гэтым уроку, апынуцца карыснымі ў вашай працы. Я дзякую вам за чытанне і спадзяюся ўбачыць вас у нашым блогу на наступным тыдні!

    Практыкуйцеся

    Майкл Браўн - адданы энтузіяст тэхналогій, які любіць спрашчэнне складаных працэсаў з дапамогай праграмных інструментаў. Маючы больш чым дзесяцігадовы досвед працы ў індустрыі тэхналогій, ён удасканальваў свае навыкі ў Microsoft Excel і Outlook, а таксама ў Google Sheets і Docs. Блог Майкла прысвечаны таму, каб падзяліцца сваімі ведамі і вопытам з іншымі, даючы простыя ў выкананні парады і падручнікі для павышэння прадукцыйнасці і эфектыўнасці. Незалежна ад таго, з'яўляецеся вы дасведчаным прафесіяналам або пачаткоўцам, блог Майкла прапануе каштоўную інфармацыю і практычныя парады, каб атрымаць максімальную аддачу ад гэтых неабходных праграмных інструментаў.