Kazalo
V tem učbeniku je razloženo, kako v Excelu uporabiti funkcijo MATCH s primeri formul. Prikazano je tudi, kako izboljšati formule za iskanje z izdelavo dinamične formule z VLOOKUP in MATCH.
V programu Microsoft Excel obstaja veliko različnih funkcij iskanja/odnosa, ki vam lahko pomagajo poiskati določeno vrednost v območju celic, in funkcija MATCH je ena od njih. V osnovi določa relativni položaj elementa v območju celic. Vendar lahko funkcija MATCH naredi veliko več kot le svoje bistvo.
Excelova funkcija MATCH - sintaksa in uporaba
Funkcija MATCH v Excelu poišče določeno vrednost v območju celic in vrne relativni položaj te vrednosti.
Sintaksa funkcije MATCH je naslednja:
MATCH(lookup_value, lookup_array, [match_type])Lookup_value (obvezno) - vrednost, ki jo želite poiskati. Lahko je številčna, besedilna ali logična vrednost ter sklic na celico.
Lookup_array (obvezno) - območje celic za iskanje.
Match_type (neobvezno) - določa vrsto ujemanja. Lahko je ena od teh vrednosti: 1, 0, -1. Argument match_type z vrednostjo 0 vrne samo natančno ujemanje, medtem ko ostali dve vrsti omogočata približno ujemanje.
- 1 ali izpuščen (privzeto) - poišče največja vrednost v polju iskanja, ki je manjše ali enako vrednosti iskanja. Zahteva razvrščanje polja iskanja v naraščajočem vrstnem redu, od najmanjšega do največjega ali od A do Ž.
- 0 - poiščite prvo vrednost v polju, ki je popolnoma enako na vrednost iskanja. Razvrščanje ni potrebno.
- -1 - poiščite najmanjša vrednost v polju, ki je večja ali enaka vrednosti iskanja. Polje iskanja je treba razvrstiti v padajočem vrstnem redu, od največjega do najmanjšega ali od Z do A.
Da bi bolje razumeli funkcijo MATCH, naredimo preprosto formulo na podlagi teh podatkov: imena študentov v stolpcu A in njihove izpitne ocene v stolpcu B, razvrščene od največje do najmanjše. Če želite ugotoviti, kje je določen študent (npr, Laura ) med drugim uporabljajo to preprosto formulo:
=MATCH("Laura", A2:A8, 0)
Po želji lahko vrednost iskanja vstavite v neko celico (E1 v tem primeru) in se nanjo sklicujete v Excelovi formuli ujemanja:
=MATCH(E1, A2:A8, 0)
Kot vidite na zgornji sliki zaslona, so imena učencev vnesena v poljubnem vrstnem redu, zato nastavimo match_type na 0 (natančno ujemanje), saj le ta vrsta ujemanja ne zahteva razvrščanja vrednosti v polju iskanja. Tehnično formula ujemanja vrne relativni položaj Laure v območju. Ker pa so rezultati razvrščeni od največjega do najmanjšega, nam pove tudi, da ima Laura peti najboljši rezultat med vsemi učenci.
Nasvet: V Excelu 365 in Excelu 2021 lahko uporabite funkcijo XMATCH, ki je sodoben in zmogljivejši naslednik funkcije MATCH.
4 stvari, ki jih morate vedeti o funkciji MATCH
Kot ste pravkar videli, je uporaba funkcije MATCH v Excelu preprosta. Vendar pa je, tako kot pri skoraj vseh drugih funkcijah, tudi tu nekaj posebnosti, na katere morate biti pozorni:
- Funkcija MATCH vrne relativni položaj vrednosti iskanja v polju in ne vrednosti same.
- MATCH je razločevanje velikih in malih črk , kar pomeni, da pri delu z besedilnimi vrednostmi ne razlikuje med malimi in velikimi črkami.
- Če polje iskanja vsebuje več pojavitev vrednosti iskanja, se vrne položaj prve vrednosti.
- Če vrednosti iskanja ni mogoče najti v polju iskanja, se vrne napaka #N/A.
Kako uporabljati MATCH v Excelu - primeri formul
Zdaj, ko poznate osnovne načine uporabe funkcije Excel MATCH, si poglejmo še nekaj primerov formul, ki presegajo osnove.
Delno ujemanje z nadomestnimi znaki
Tako kot številne druge funkcije tudi MATCH razume naslednje nadomestne znake:
- Vprašalni znak (?) - nadomesti katerikoli posamezni znak
- Zvezdica (*) - nadomesti poljubno zaporedje znakov
Opomba: Zaščitni znaki se lahko uporabljajo samo v formulah za ujemanje z match_type nastavljena na 0.
Formula ujemanja z nadomestnimi znaki je uporabna v primerih, ko ne želite ujemati celotnega besedilnega niza, temveč le nekatere znake ali del niza. Za ponazoritev si oglejte naslednji primer.
Recimo, da imate seznam regionalnih prodajalcev in njihove prodajne številke za zadnji mesec. Želite poiskati relativni položaj določenega prodajalca na seznamu (razvrščen po prodajnih številkah v padajočem vrstnem redu), vendar se ne morete natančno spomniti njegovega imena, čeprav se spomnite nekaj prvih znakov.
Ob predpostavki, da so imena preprodajalcev v območju A2:A11 in da iščete ime, ki se začne z "car", je formula naslednja:
=MATCH("car*", A2:A11,0)
Če želite formulo za ujemanje narediti bolj vsestransko, lahko vrednost iskanja vnesete v neko celico (v tem primeru E1) in jo povežete z nadomestnim znakom, kot je prikazano na naslednji način:
=MATCH(E1& "*", A2:A11,0)
Kot je prikazano na spodnji sliki zaslona, formula vrne 2, kar je položaj "Carter":
Če želite nadomestiti samo en znak v vrednosti iskanja, uporabite nadomestni znak "?", kot sledi:
=MATCH("ba?er", A2:A11,0)
Zgornja formula se bo ujemala z imenom " Baker " in ponovno zaženite njegov relativni položaj, ki je 5.
Formula MATCH, občutljiva na velike črke
Kot je omenjeno na začetku tega vodnika, funkcija MATCH ne razlikuje med velikimi in malimi črkami. Če želite pripraviti formulo Match, ki upošteva velike in male črke, uporabite MATCH v kombinaciji s funkcijo EXACT, ki natančno primerja celice, vključno z velikostjo znakov.
Tukaj je splošna formula za ujemanje podatkov, ki upošteva velike in male črke:
MATCH(TRUE, EXACT( polje za iskanje , vrednost iskanja ), 0)Formula deluje po naslednji logiki:
- Funkcija EXACT primerja vrednost iskanja z vsakim elementom polja iskanja. Če sta primerjani celici popolnoma enaki, funkcija vrne TRUE, sicer pa FALSE.
- Nato funkcija MATCH primerja TRUE (kar je njen lookup_value ) z vsako vrednostjo v polju, ki ga vrne EXACT, in vrne položaj prvega ujemanja.
Upoštevajte, da gre za formulo z matriko, ki jo je treba pravilno izpolniti s pritiskom tipk Ctrl + Shift + Enter.
Ob predpostavki, da je vrednost iskanja v celici E1 in da je polje iskanja A2:A9, je formula naslednja:
=MATCH(TRUE, EXACT(A2:A9,E1),0)
Naslednja zaslonska slika prikazuje formulo za ujemanje, ki razlikuje velike in male črke, v Excelu:
Primerjajte 2 stolpca za ujemanje in razlike (ISNA MATCH)
Preverjanje ujemanj in razlik med dvema seznamoma je eno najpogostejših opravil v Excelu, ki ga lahko opravite na različne načine. Eden od njih je formula ISNA/MATCH:
IF(ISNA(MATCH( 1. vrednost v Seznamu1 , Seznam2 , 0)), "Ni na seznamu 1", "")Za vsako vrednost s seznama 2, ki je ni na seznamu 1, formula vrne " Ni na seznamu 1 ". In tu je način:
- Funkcija MATCH išče vrednost s seznama 1 v seznamu 2. Če vrednost najde, vrne njen relativni položaj, v nasprotnem primeru pa napako #N/A.
- Funkcija ISNA v Excelu naredi samo eno stvar - preveri napake #N/A (kar pomeni "ni na voljo"). Če je določena vrednost napaka #N/A, funkcija vrne TRUE, sicer pa FALSE. V našem primeru TRUE pomeni, da vrednosti s seznama 1 ni mogoče najti na seznamu 2 (tj. funkcija MATCH vrne napako #N/A).
- Ker bi bilo za uporabnike lahko zelo zmedeno, če bi videli TRUE za vrednosti, ki se ne pojavljajo na seznamu 1, funkcijo IF ovijte okoli funkcije ISNA, da se prikaže " Ni na seznamu 1 " ali poljubno besedilo.
Če želite na primer primerjati vrednosti v stolpcu B z vrednostmi v stolpcu A, je formula v naslednji obliki (kjer je B2 najvišja celica):
=IF(ISNA(MATCH(B2,A:A,0)), "Ni na seznamu 1", "")
Kot se spomnite, funkcija MATCH v Excelu sama po sebi ne razlikuje velikih in malih črk. Če želite, da razlikuje velikost znakov, vnesite funkcijo EXACT v lookup_array in ne pozabite pritisniti Ctrl + Shift + Enter, da dokončate to formula polja :
=IF(ISNA(MATCH(TRUE, EXACT(A:A, B2),0)), "Ni na seznamu 1", "")
Naslednja zaslonska slika prikazuje obe formuli:
Če želite spoznati druge načine za primerjavo dveh seznamov v Excelu, si oglejte naslednje vodilo: Kako primerjati dva stolpca v Excelu.
Excel VLOOKUP in MATCH
Ta primer predpostavlja, da že imate osnovno znanje o Excelovi funkciji VLOOKUP. Če ga imate, je verjetno, da ste naleteli na njene številne omejitve (njihov podroben pregled najdete v članku Zakaj Excelova funkcija VLOOKUP ne deluje) in iščete zanesljivejšo alternativo.
Ena najbolj nadležnih pomanjkljivosti VLOOKUP je, da po vstavitvi ali izbrisu stolpca v preglednici za iskanje preneha delovati. To se zgodi, ker VLOOKUP potegne ustrezno vrednost na podlagi številke stolpca za vračanje, ki ste jo določili (številka indeksa). številka indeksa je "trdno" zakodirana v formuli, je Excel ne more prilagoditi, ko se v tabelo doda ali izbriše nov(-i) stolpec(-i).
Excelova funkcija MATCH obravnava relativni položaj vrednosti iskanja, zaradi česar se odlično prilega col_index_num Z drugimi besedami, namesto da bi določili stolpec za vračilo kot statično število, uporabite MATCH za pridobitev trenutnega položaja tega stolpca.
Za lažje razumevanje ponovno uporabimo tabelo z rezultati izpitov študentov (podobno tisti, ki smo jo uporabili na začetku tega učbenika), vendar bomo tokrat pridobili dejanski rezultat in ne njegovega relativnega položaja.
Ob predpostavki, da je iskalna vrednost v celici F1, da je tabelarično polje $A$1:$C$2 (če nameravate formulo kopirati v druge celice, je dobro, da jo zaklenete z uporabo absolutnih referenc celic), je formula naslednja:
=VLOOKUP(F1, $A$1:$C$8, 3, FALSE)
Tretji argument ( col_index_num ) se nastavi na 3, ker Matematični rezultat ki ga želimo izvleči, je tretji stolpec v tabeli. Kot lahko vidite na spodnji sliki zaslona, ta običajna formula Vlookup deluje dobro:
Vendar le, dokler ne vstavite ali izbrišete stolpca(-ev):
Zakaj torej napaka #REF!? Ker col_index_num nastavljena na 3 pove Excelu, da pridobi vrednost iz tretjega stolpca, medtem ko sta zdaj v polju tabele samo dva stolpca.
Da bi preprečili takšne stvari, lahko formulo Vlookup naredite bolj dinamično, tako da vključite naslednjo funkcijo Match:
MATCH(E2,A1:C1,0)
Kje:
- E2 je iskalna vrednost, ki je popolnoma enako v ime stolpca za vračilo, tj. stolpca, iz katerega želite izvleči vrednost ( Matematični rezultat v tem primeru).
- A1:C1 je polje iskanja, ki vsebuje glave tabel.
Zdaj pa to funkcijo Match vključite v col_index_num argumenta vaše formule Vlookup, kot je ta:
=VLOOKUP(F1,$A$1:$C$8, MATCH(E2,$A$1:$C$1, 0), FALSE)
Poskrbite, da bo delovala brezhibno ne glede na to, koliko stolpcev boste dodali ali izbrisali:
Na zgornji zaslonski sliki sem zaklenil vse sklice na celice, da bi formula delovala pravilno, tudi če jo uporabniki premaknejo na drugo mesto v delovnem listu. Kot lahko vidite na spodnji zaslonski sliki, formula po izbrisu stolpca deluje brez težav; poleg tega je Excel dovolj pameten, da v tem primeru pravilno prilagodi absolutne reference:
Excel HLOOKUP in MATCH
Na podoben način lahko uporabite Excelovo funkcijo MATCH za izboljšanje formul HLOOKUP. Splošno načelo je v bistvu enako kot pri Vlookup: s funkcijo Match dobite relativni položaj vrnitvenega stolpca in to številko posredujete funkciji številka_indeksa_vrstice argumenta v formuli Hlookup.
Če je vrednost iskanja v celici B5, tabelarično polje je B1:H3, ime vrnjene vrstice (vrednost iskanja za MATCH) je v celici A6, glave vrstic pa so A1:A3, je celotna formula naslednja:
=HLOOKUP(B5, B1:H3, MATCH(A6, A1:A3, 0), FALSE)
Kot ste pravkar videli, je kombinacija Hlookup/Vlookup & amp; Match vsekakor boljša od običajnih formul Hlookup in Vlookup. Vendar funkcija MATCH ne odpravlja vseh njunih omejitev. Zlasti formula Vlookup Match še vedno ne more iskati v levi vrstici, Hlookup Match pa ne more iskati v nobeni vrstici razen v najvišji.
Če želite odpraviti zgornje (in še nekaj drugih) omejitve, razmislite o uporabi kombinacije INDEX MATCH, ki zagotavlja resnično zmogljiv in vsestranski način iskanja v Excelu, ki je v številnih pogledih boljši od Vlookup in Hlookup. Podrobna navodila in primere formul najdete v članku INDEX & amp; MATCH in Excel - a better alternative to VLOOKUP.
Tako v Excelu uporabljate formule MATCH. Upam, da vam bodo primeri, obravnavani v tem učbeniku, v pomoč pri vašem delu. Zahvaljujem se vam za branje in upam, da se naslednji teden vidimo na našem blogu!
Praktični delovni zvezek za prenos
Primeri formul MATCH v Excelu (.xlsx datoteka)