"Excel" funkcijos MATCH pavyzdžiai su formulėmis

  • Pasidalinti
Michael Brown

Šioje pamokoje paaiškinama, kaip naudoti MATCH funkciją "Excel" programoje, pateikiant formulės pavyzdžių. Taip pat parodoma, kaip patobulinti paieškos formules, kuriant dinaminę formulę su VLOOKUP ir MATCH.

Programoje "Microsoft Excel" yra daug įvairių paieškos ir (arba) nuorodos funkcijų, kurios gali padėti surasti tam tikrą reikšmę ląstelių intervale, o MATCH yra viena iš jų. Iš esmės ji nustato santykinę elemento padėtį ląstelių intervale. Tačiau funkcija MATCH gali atlikti kur kas daugiau nei tik jos esmė.

    "Excel" funkcija MATCH - sintaksė ir naudojimo būdai

    "Excel" funkcija MATCH ieško nurodytos reikšmės ląstelių intervale ir grąžina santykinę tos reikšmės padėtį.

    Funkcijos MATCH sintaksė yra tokia:

    MATCH(lookup_value, lookup_array, [match_type])

    Lookup_value (privaloma) - reikšmė, kurią norite rasti. Tai gali būti skaitinė, tekstinė ar loginė reikšmė, taip pat ląstelės nuoroda.

    Lookup_array (privaloma) - ląstelių, kuriose bus ieškoma, intervalas.

    Match_type (neprivaloma) - apibrėžia atitikimo tipą. Tai gali būti viena iš šių reikšmių: 1, 0, -1. Argumentas match_type, kurio reikšmė yra 0, grąžina tik tikslų atitikimą, o kiti du tipai leidžia nustatyti apytikslį atitikimą.

    • 1 arba praleista (numatytoji reikšmė) - rasti didžiausia vertė paieškos masyve, kuris yra mažesnis arba lygus paieškos vertei. Reikia surūšiuoti paieškos masyvą didėjančia tvarka nuo mažiausio iki didžiausio arba nuo A iki Z.
    • 0 - suraskite pirmąją reikšmę masyve, kuri yra lygiai vienodi į paieškos reikšmę. Rūšiuoti nereikia.
    • -1 - rasti mažiausia vertė masyvą, kuris yra didesnis arba lygus paieškos vertei. Paieškos masyvas turėtų būti surūšiuotas mažėjančia tvarka nuo didžiausio iki mažiausio arba nuo Z iki A.

    Kad geriau suprastume funkciją MATCH, sukurkime paprastą formulę, paremtą šiais duomenimis: studentų vardai A stulpelyje, o jų egzaminų rezultatai B stulpelyje, surūšiuoti nuo didžiausio iki mažiausio. Norėdami sužinoti, kurioje vietoje yra konkretus studentas (pvz, Laura ) stenduose, be kita ko, naudojama ši paprasta formulė:

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

    Neprivalomai galite įrašyti paieškos vertę į tam tikrą ląstelę (šiame pavyzdyje - E1) ir pateikti nuorodą į tą ląstelę "Excel" atitikmens formulėje:

    =MATCH(E1, A2:A8, 0)

    Kaip matote pirmiau pateiktoje ekrano kopijoje, mokinių vardai įvedami savavališka tvarka, todėl nustatome match_type argumentą į 0 (tikslus atitikimas), nes tik šiam atitikimo tipui nereikia rūšiuoti reikšmių paieškos masyve. Techniškai atitikimo formulė grąžina santykinę Lauros vietą intervale. Tačiau kadangi balai surūšiuoti nuo didžiausio iki mažiausio, ji taip pat nurodo, kad Lauros rezultatas yra penktas geriausias iš visų mokinių.

    Patarimas. "Excel 365" ir "Excel 2021" galite naudoti funkciją XMATCH, kuri yra moderni ir galingesnė MATCH įpėdinė.

    4 dalykai, kuriuos turėtumėte žinoti apie funkciją MATCH

    Kaip ką tik įsitikinote, "Excel" programoje MATCH naudoti paprasta. Tačiau, kaip ir beveik bet kurios kitos funkcijos atveju, yra keletas ypatumų, kuriuos turėtumėte žinoti:

    1. Funkcija MATCH grąžina santykinė padėtis paieškos reikšmę masyve, o ne pačią reikšmę.
    2. MATCH yra Atskirų raidžių , t. y. dirbant su teksto reikšmėmis neskiriamos mažosios ir didžiosios raidės.
    3. Jei paieškos masyve yra kelios paieškos reikšmės pasikartojimai, grąžinama pirmosios reikšmės pozicija.
    4. Jei paieškos reikšmė nerandama paieškos masyve, grąžinama klaida #N/A.

    Kaip naudoti MATCH programoje "Excel" - formulių pavyzdžiai

    Dabar, kai jau žinote pagrindinius "Excel" funkcijos MATCH naudojimo būdus, aptarsime dar keletą formulės pavyzdžių, kurie yra platesni už pagrindinius.

    Dalinis atitikimas su pakaitiniais ženklais

    Kaip ir daugelis kitų funkcijų, MATCH supranta šiuos pakaitinius simbolius:

    • Klausimo ženklas (?) - pakeičia bet kurį vieną simbolį
    • Žvaigždutė (*) - pakeičia bet kokią simbolių seką

    Pastaba: "Wildcards" galima naudoti tik atitikmenų formulėse su match_type nustatyta į 0.

    Atitikimo formulė su pakaitiniais ženklais praverčia tais atvejais, kai norite sutapatinti ne visą teksto eilutę, o tik kai kuriuos simbolius arba tam tikrą eilutės dalį. Šiai minčiai iliustruoti panagrinėkite šį pavyzdį.

    Tarkime, kad turite regioninių perpardavėjų sąrašą ir jų praėjusio mėnesio pardavimų sumas. Norite rasti tam tikro perpardavėjo santykinę vietą sąraše (surūšiuotą pagal pardavimų sumas mažėjimo tvarka), tačiau negalite tiksliai prisiminti jo vardo, nors prisimenate kelis pirmuosius simbolius.

    Darant prielaidą, kad perpardavėjų pavadinimai yra iš intervalo A2:A11, o jūs ieškote pavadinimo, prasidedančio žodžiu "car", formulė yra tokia:

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

    Kad mūsų atitikmens formulė būtų universalesnė, galite įvesti paieškos reikšmę į kurį nors langelį (šiame pavyzdyje - E1) ir sujungti tą langelį su pakaitiniu simboliu, pvz., taip:

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

    Kaip parodyta toliau pateiktoje ekrano kopijoje, formulė grąžina 2, t. y. "Carter" poziciją:

    Norėdami pakeisti tik vieną paieškos vertės simbolį, naudokite pakaitinio simbolio operatorių "?", pvz., taip:

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

    Pirmiau pateikta formulė atitiks pavadinimą " Baker " ir iš naujo paleiskite jo santykinę padėtį, kuri yra 5.

    Didžiosios raidės MATCH formulė

    Kaip minėta šio vadovėlio pradžioje, funkcija MATCH neskiria didžiųjų ir mažųjų raidžių simbolių. Jei norite sukurti didžiosioms ir mažosioms raidėms jautrią atitikmenų formulę, naudokite MATCH kartu su funkcija EXACT, kuri lygina langelius tiksliai, įskaitant simbolių raidę.

    Pateikiame bendrąją duomenų atitikimo formulę, kurioje atsižvelgiama į mažąsias ir didžiąsias raides:

    MATCH(TRUE, EXACT( paieškos masyvas , paieškos vertė ), 0)

    Formulė veikia pagal tokią logiką:

    • Funkcija EXACT palygina paieškos reikšmę su kiekvienu paieškos masyvo elementu. Jei lyginami elementai yra lygiai vienodi, funkcija grąžina TRUE, priešingu atveju - FALSE.
    • Ir tada funkcija MATCH palygina TRUE (tai yra jos lookup_value ) su kiekviena EXACT grąžinto masyvo verte ir grąžina pirmojo atitikmens poziciją.

    Atminkite, kad tai yra masyvo formulė, kurią norint teisingai užbaigti, reikia paspausti Ctrl + Shift + Enter.

    Darant prielaidą, kad paieškos vertė yra ląstelėje E1, o paieškos masyvas yra A2:A9, formulė yra tokia:

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

    Toliau pateiktoje ekrano nuotraukoje parodyta "Excel" formulė "Match", kurioje atsižvelgiama į mažąsias ir didžiąsias raides:

    Palyginkite 2 stulpelius, ar jie sutampa ir skiriasi (ISNA MATCH)

    Dviejų sąrašų atitikmenų ir skirtumų tikrinimas yra viena iš dažniausiai atliekamų užduočių "Excel" programoje, o tai galima atlikti įvairiais būdais. Vienas iš jų - ISNA/MATCH formulė:

    IF(ISNA(MATCH( 1-oji sąrašo List1 reikšmė , Sąrašas2 , 0)), "Ne 1 sąraše", "")

    Bet kuriai 2 sąrašo reikšmei, kurios nėra 1 sąraše, formulė grąžina " Neįtrauktas į 1 sąrašą ". Ir štai kaip:

    • Funkcija MATCH ieško reikšmės iš Sąrašo 1 Sąraše 2. Jei reikšmė randama, grąžinama jos santykinė padėtis, priešingu atveju - #N/A klaida.
    • "Excel" funkcija ISNA atlieka tik vieną veiksmą - tikrina, ar nėra #N/A klaidų (t. y. "nėra"). Jei tam tikra reikšmė yra #N/A klaida, funkcija grąžina TRUE, priešingu atveju - FALSE. Mūsų atveju TRUE reiškia, kad reikšmė iš 1 sąrašo nerandama 2 sąraše (t. y. MATCH grąžina #N/A klaidą).
    • Kadangi naudotojams gali būti labai painu matyti TRUE reikšmėms, kurių nėra 1 sąraše, jūs apvyniojate IF funkciją aplink ISNA, kad būtų rodoma " Neįtrauktas į 1 sąrašą " arba bet kokį kitą norimą tekstą.

    Pavyzdžiui, norint palyginti B stulpelio reikšmes su A stulpelio reikšmėmis, formulė įgauna tokią formą (kur B2 yra viršutinė ląstelė):

    =IF(ISNA(MATCH(B2,A:A,0)), "Ne 1 sąraše", "")

    Kaip prisimenate, "Excel" funkcija MATCH pati savaime neskiria didžiųjų ir mažųjų raidžių. Norėdami, kad ji atskirtų simbolių bylas, įterpkite funkciją EXACT į lookup_array argumentą ir nepamirškite paspausti Ctrl + Shift + Enter, kad tai užbaigtumėte. masyvo formulė :

    =IF(ISNA(MATCH(TRUE, EXACT(A:A, B2),0)), "Ne 1 sąraše", "")

    Toliau pateiktoje ekrano nuotraukoje parodytos abi formulės:

    Jei norite sužinoti kitų būdų, kaip "Excel" programoje palyginti du sąrašus, žr. šią mokomąją medžiagą: Kaip "Excel" programoje palyginti 2 stulpelius.

    "Excel" VLOOKUP ir MATCH

    Šiame pavyzdyje daroma prielaida, kad jau turite bazinių žinių apie "Excel" VLOOKUP funkciją. Jei turite, tikėtina, kad susidūrėte su daugybe jos trūkumų (išsamią jų apžvalgą rasite straipsnyje Kodėl "Excel" VLOOKUP neveikia) ir ieškote patikimesnės alternatyvos.

    Vienas iš labiausiai erzinančių VLOOKUP trūkumų yra tas, kad jis nustoja veikti įterpus arba ištrynus stulpelį paieškos lentelėje. Taip atsitinka todėl, kad VLOOKUP ištraukia atitinkamą reikšmę pagal jūsų nurodytą grąžinamo stulpelio numerį (indekso numerį). Kadangi indekso numeris formulėje "užkoduotas", "Excel" negali jo pakoreguoti, kai į lentelę įtraukiamas (-i) naujas (-i) stulpelis (-iai) arba iš jos pašalinamas (-i).

    "Excel" funkcija MATCH nagrinėja santykinė padėtis paieškos vertės, todėl ji puikiai tinka col_index_num Kitaip tariant, užuot nurodę grąžinamą stulpelį kaip statinį skaičių, naudodami MATCH gaunate dabartinę to stulpelio poziciją.

    Kad būtų lengviau suprasti, vėl naudokime lentelę su mokinių egzaminų rezultatais (panašią į tą, kurią naudojome šios pamokos pradžioje), tačiau šį kartą gausime tikrąjį rezultatą, o ne jo santykinę padėtį.

    Darant prielaidą, kad paieškos reikšmė yra ląstelėje F1, o lentelės masyvas yra $A$1:$C$2 (jei planuojate kopijuoti formulę į kitas ląsteles, verta ją užfiksuoti naudojant absoliučiąsias ląstelių nuorodas), formulė bus tokia:

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

    Trečiasis argumentas ( col_index_num ) yra 3, nes Matematikos rezultatas kurį norime ištraukti, yra 3-iasis lentelės stulpelis. Kaip matote toliau pateiktoje ekrano kopijoje, ši įprasta Vlookup formulė veikia gerai:

    Tačiau tik tol, kol įterpsite arba ištrinsite stulpelį (-ius):

    Taigi, kodėl #REF! klaida? Nes col_index_num nustatytas į 3, nurodo "Excel" gauti reikšmę iš trečiojo stulpelio, nors dabar lentelės masyve yra tik 2 stulpeliai.

    Kad taip nenutiktų, galite padaryti savo "Vlookup" formulę dinamiškesnę įtraukdami šią funkciją "Match":

    MATCH(E2,A1:C1,0)

    Kur:

    • E2 yra paieškos vertė, kuri yra tiksliai lygus į grąžinamo stulpelio pavadinimą, t. y. stulpelį, iš kurio norite ištraukti reikšmę ( Matematikos rezultatas šiame pavyzdyje).
    • A1:C1 yra paieškos masyvas, kuriame yra lentelės antraštės.

    Dabar įtraukite šią "Match" funkciją į col_index_num Vlookup formulės argumentą, pvz., taip:

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

    Įsitikinkite, kad jis veikia nepriekaištingai, nesvarbu, kiek stulpelių pridėsite ar ištrinsite:

    Pirmiau pateiktoje ekrano kopijoje užrakinau visas ląstelių nuorodas, kad formulė veiktų teisingai, net jei mano naudotojai perkelia ją į kitą darbalapio vietą. Kaip matote toliau pateiktoje ekrano kopijoje, formulė puikiai veikia ištrynus stulpelį; be to, šiuo atveju "Excel" yra pakankamai protinga, kad tinkamai pritaikytų absoliučiąsias nuorodas:

    "Excel" HLOOKUP ir MATCH

    Panašiai galite naudoti "Excel" funkciją MATCH, kad patobulintumėte savo HLOOKUP formules. Bendras principas iš esmės yra toks pat kaip ir Vlookup atveju: naudojate funkciją Match, kad sužinotumėte santykinę grąžinimo stulpelio padėtį, ir pateikiate šį skaičių formulei HLOOKUP. row_index_num Hlookup formulės argumentas.

    Tarkime, kad paieškos reikšmė yra ląstelėje B5, lentelės masyvas yra B1:H3, grąžinamos eilutės pavadinimas (MATCH paieškos reikšmė) yra ląstelėje A6, o eilučių antraštės yra A1:A3, visa formulė yra tokia:

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

    Kaip ką tik matėte, Hlookup/Vlookup & amp; Match derinys tikrai yra geresnis už įprastas Hlookup ir Vlookup formules. Tačiau funkcija MATCH nepanaikina visų jų apribojimų. Visų pirma, Vlookup Match formulė vis dar negali žiūrėti į kairę, o Hlookup Match nepavyksta ieškoti bet kurioje kitoje eilutėje, išskyrus pačią viršutinę.

    Norėdami įveikti pirmiau minėtus (ir keletą kitų) apribojimų, apsvarstykite galimybę naudoti INDEX MATCH derinį, kuris yra tikrai galingas ir universalus būdas atlikti paiešką "Excel" programoje, daugeliu atžvilgių pranašesnis už "Vlookup" ir "Hlookup". Išsamius nurodymus ir formulių pavyzdžius rasite straipsnyje INDEX & amp; MATCH in Excel - a better alternative to VLOOKUP.

    Taip Excel programoje naudojamos MATCH formulės. Tikiuosi, kad šioje pamokoje aptarti pavyzdžiai bus naudingi jūsų darbe. Dėkoju, kad perskaitėte, ir tikiuosi, kad kitą savaitę susitiksime mūsų tinklaraštyje!

    Atsisiųsti praktikos sąsiuvinį

    "Excel" MATCH formulės pavyzdžiai (.xlsx failas)

    Michaelas Brownas yra atsidavęs technologijų entuziastas, mėgstantis supaprastinti sudėtingus procesus naudojant programinės įrangos įrankius. Turėdamas daugiau nei dešimtmetį patirtį technologijų pramonėje, jis patobulino savo įgūdžius „Microsoft Excel“ ir „Outlook“, taip pat „Google“ skaičiuoklėse ir dokumentuose. Michaelio tinklaraštis skirtas dalytis savo žiniomis ir patirtimi su kitais, jame pateikiami lengvai įgyvendinami patarimai ir vadovėliai, kaip pagerinti produktyvumą ir efektyvumą. Nesvarbu, ar esate patyręs profesionalas, ar pradedantysis, Michaelo tinklaraštyje rasite vertingų įžvalgų ir praktinių patarimų, kaip išnaudoti visas šių pagrindinių programinės įrangos įrankių galimybes.