Kazalo
V učbeniku je predstavljena nova Excelova funkcija XMATCH in prikazano, kako je boljša od funkcije MATCH za reševanje nekaj pogostih nalog.
V Excelu 365 je bila dodana funkcija XMATCH, ki je nadomestila funkcijo MATCH. Toda preden začnete nadgrajevati obstoječe formule, bi bilo pametno razumeti vse prednosti nove funkcije in kako se razlikuje od stare.
Če povzamemo, je funkcija XMATCH enaka funkciji MATCH, vendar je bolj prilagodljiva in zanesljiva. Iskanje lahko poteka v navpičnih in vodoravnih poljih, išče od prvega do zadnjega ali od zadnjega do prvega, išče natančna, približna in delna ujemanja ter uporablja hitrejši algoritem za binarno iskanje.
Funkcija Excel XMATCH
Funkcija XMATCH v Excelu vrne relativni položaj vrednosti v polju ali območju celic.
Ima naslednjo sintakso:
XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])Kje:
Lookup_value (obvezno) - vrednost, ki jo je treba poiskati.
Lookup_array (obvezno) - polje ali območje celic, v katerih se išče.
Match_mode (neobvezno) - določa, katera vrsta ujemanja se uporabi:
- 0 ali izpuščeno (privzeto) - natančno ujemanje
- -1 - natančno ujemanje ali naslednja najmanjša vrednost
- 1 - natančno ujemanje ali naslednja največja vrednost
- 2 - ujemanje z nadomestnimi znaki (*, ?)
Način iskanja (Search_mode) (neobvezno) - določa smer iskanja in algoritem:
- 1 ali izpuščeno (privzeto) - iskanje od prvega do zadnjega.
- -1 - iskanje v obratnem vrstnem redu od zadnjega do prvega.
- 2 - binarno iskanje naraščajoče. Zahteve lookup_array da se razvrstijo po naraščajočem vrstnem redu.
- -2 - binarno iskanje v padajočem vrstnem redu. Zahteve lookup_array da se razvrstijo v padajočem vrstnem redu.
Binarno iskanje je hitrejši algoritem, ki učinkovito deluje na razvrščenih poljih. Za več informacij glejte Način iskanja.
Katera različica programa Excel ima XMATCH?
Funkcija XMATCH je na voljo samo v programih Excel za Microsoft 365 in Excel 2021. V programih Excel 2019, Excel 2016 in prejšnjih različicah ta funkcija ni podprta.
Osnovna formula XMATCH v Excelu
Za splošno predstavo o tem, kaj funkcija zmore, sestavimo formulo XMATCH v njeni najpreprostejši obliki, pri čemer določimo le prva dva obvezna argumenta, neobvezne argumente pa pustimo privzete.
Recimo, da imate seznam oceanov, razvrščenih po velikosti (C2:C6), in da želite ugotoviti rang določenega oceana. To lahko storite tako, da preprosto uporabite ime oceana, npr. Indijski , kot vrednost iskanja in celoten seznam imen kot polje iskanja:
=XMATCH("Indijski", C2:C6)
Če želite formulo narediti bolj prilagodljivo, vnesite ocean, ki vas zanima, v neko celico, na primer F1:
=XMATCH(F1, C2:C6)
Kot rezultat dobite formulo XMATCH, ki jo lahko poiščete v navpični niz . Rezultat je relativni položaj vrednosti iskanja v polju, ki v našem primeru ustreza rangu oceana:
Podobna formula se odlično obnese za vodoravni niz Vse, kar morate storiti, je, da prilagodite lookup_array referenca:
=XMATCH(B5, B1:F1)
Funkcija Excel XMATCH - stvari, ki si jih morate zapomniti
Če želite učinkovito uporabljati XMATCH v delovnih listih in preprečiti nepričakovane rezultate, si zapomnite ta tri preprosta dejstva:
- Če sta v polju iskanja dve ali več pojavitev vrednosti iskanja, se položaj prva tekma se vrne, če je search_mode je nastavljen na 1 ali izpuščen. z search_mode nastavljena na -1, funkcija išče v obratnem vrstnem redu in vrne položaj zadnja tekma kot je prikazano v tem primeru.
- Če je vrednost iskanja ni najden. , pride do napake #N/A.
- Funkcija XMATCH je razločevanje velikih in malih črk Za razlikovanje malih in velikih črk uporabite formulo XMATCH, ki upošteva velikost črk.
Kako uporabljati XMATCH v Excelu - primeri formul
Naslednji primeri vam bodo pomagali bolje razumeti funkcijo XMATCH in njeno praktično uporabo.
Natančno ujemanje in približno ujemanje
Obnašanje XMATCH-a pri ujemanju nadzoruje izbirni match_mode argument:
- 0 ali izpuščeno (privzeto) - formula išče le natančno ujemanje. Če natančnega ujemanja ne najde, se vrne napaka #N/A.
- -1 - formula najprej poišče natančno ujemanje in nato naslednji manjši element.
- 1 - formula najprej poišče natančno ujemanje in nato naslednji večji element.
Zdaj pa si oglejmo, kako različni načini ujemanja vplivajo na rezultat formule. Recimo, da želite ugotoviti, kje med vsemi oceani je določeno območje, na primer 80 000 000 km2.
Natančno ujemanje
Če uporabite 0 za match_mode , boste prejeli napako #N/A, ker formula ne more najti vrednosti, ki bi bila natančno enaka vrednosti iskanja:
=XMATCH(80000000, C2:C6, 0)
Naslednja najmanjša postavka
Če uporabite -1 za match_mode , formula vrne 3, ker je najbližje ujemanje, manjše od vrednosti iskanja, 70 560 000 in je tretji element v polju iskanja:
=XMATCH(80000000, C2:C6, -1)
Naslednja največja postavka
Če uporabite 1 za match_mode , formula izpiše 2, ker je najbližje ujemanje, večje od vrednosti iskanja, 85 133 000, kar je 2. element v polju iskanja:
=XMATCH(80000000, C2:C6, -1)
Na spodnji sliki so prikazani vsi rezultati:
Kako ujemanje delnega besedila v Excelu z nadomestnimi znaki
Funkcija XMATCH ima poseben način ujemanja za nadomestne znake: match_mode argument je nastavljen na 2.
V načinu ujemanja z nadomestnimi znaki formula XMATCH sprejema naslednje nadomestne znake:
- Vprašalni znak (?) za ujemanje poljubnega posameznega znaka.
- Zvezdica (*) za ujemanje poljubnega zaporedja znakov.
Upoštevajte, da nadomestni znaki delujejo le z besedilom in ne s številkami.
Če želite na primer poiskati položaj prvega elementa, ki se začne z "jug", je formula naslednja:
=XMATCH("south*", B2:B6, 2)
Lahko pa izraz z nadomestnim znakom vnesete v neko celico, na primer F1, in navedete sklic na celico za lookup_value argument:
=XMATCH(F1, B2:B6, 2)
Pri večini funkcij programa Excel uporabite tilde (~), da zvezdico (~*) ali vprašalnik (~?) obravnavate kot dobesedne znake in ne kot nadomestne znake. Pri programu XMATCH tilde ni potreben. Če ne določite načina ujemanja nadomestnih znakov, bo program XMATCH predpostavil, da sta ? in * običajna znaka.
Spodnja formula bo na primer v območju A2:A7 natančno poiskala znak zvezdica:
=XMATCH("*", A2:A7)
Povratno iskanje XMATCH za iskanje zadnjega ujemanja
Če je v polju iskanja več pojavitev vrednosti iskanja, boste morda včasih morali pridobiti položaj zadnje pojavljanje .
Smer iskanja je odvisna od 4. argumenta XMATCH z imenom search_mode Iskanje v obratnem vrstnem redu, tj. od spodaj navzgor v navpičnem polju in od desne proti levi v vodoravnem polju, search_mode je treba nastaviti na -1.
V tem primeru bomo vrnili položaj zadnjega zapisa za določeno vrednost iskanja (oglejte si spodnjo sliko zaslona). V ta namen nastavite argumente, kot sledi:
- Lookup_value - ciljnega prodajalca v H1
- Lookup_array - imena prodajalcev v C2:C10
- Match_mode je 0 ali je izpuščen (natančno ujemanje)
- Način iskanja (Search_mode) je -1 (od zadnjega do prvega).
Če štiri argumente združimo, dobimo to formulo:
=XMATCH(H1, C2:C10, 0, -1)
ki vrne številko zadnje prodaje, ki jo je opravila Laura:
Kako primerjati dva stolpca v Excelu za ujemanje
Če želite primerjati dva seznama in poiskati ujemanje, lahko uporabite funkcijo XMATCH skupaj s funkcijama IF in ISNA:
IF( ISNA( XMATCH( ciljni_list , search_list , 0)), "Ni ujemanja", "Ujemanje")Če želite na primer primerjati seznam 2 v B2:B10 s seznamom 1 v A2:A10, je formula v naslednji obliki:
=IF(ISNA(XMATCH(B2:B10, A2:A9)), "", "Ujemanje na seznamu 1")
V tem primeru identificiramo samo ujemanja, zato je value_if_true argument funkcije IF je prazen niz ("").
Zgornjo formulo vnesite v najvišjo celico (v našem primeru C2), pritisnite Enter in formula se bo samodejno "prelila" v druge celice (to se imenuje območje prelivanja):
Kako deluje ta formula
V središču formule je funkcija XMATCH, ki išče vrednost s seznama 2 v seznamu 1. Če je vrednost najdena, je vrnjen njen relativni položaj, sicer pa se pojavi napaka #N/A. V našem primeru je rezultat funkcije XMATCH naslednje polje:
{#N/A;#N/A;2;#N/A;4;#N/A;#N/A;#N/A;8;#N/A}
To polje se "posreduje" funkciji ISNA, ki ga preveri za napake #N/A. Za vsako napako #N/A funkcija ISNA vrne vrednost TRUE, za vsako drugo vrednost pa vrednost FALSE. Rezultat je naslednje polje logičnih vrednosti, pri čemer vrednosti TRUE pomenijo neskladja, vrednosti FALSE pa skladja:
{TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;TRUE;TRUE;FALSE;TRUE}
Zgornje polje je namenjeno logičnemu preizkusu funkcije IF. Glede na to, kako ste konfigurirali zadnja dva argumenta, bo formula prikazala ustrezno besedilo. V našem primeru je to prazen niz ("") za neskladja ( value_if_true ) in "Zadetek na seznamu 1" za zadetke ( value_if_false ).
Opomba: Ta formula deluje samo v programih Excel 365 in Excel 2021, ki podpirajo dinamične nize. Če uporabljate Excel 2019, Excel 2016 ali prejšnjo različico, si oglejte druge rešitve: Kako primerjati dva stolpca v Excelu.
INDEX XMATCH v Excelu
Funkcijo XMATCH lahko uporabite v kombinaciji s funkcijo INDEX za pridobitev vrednosti iz drugega stolpca, povezanega z vrednostjo iskanja, tako kot formula INDEX MATCH. Splošni pristop je naslednji:
INDEX ( vrniti _ polje , XMATCH ( lookup_value , lookup_array )Logika je zelo preprosta in ji je enostavno slediti:
Funkcija XMATCH izračuna relativni položaj vrednosti iskanja v polju iskanja in ga posreduje funkciji vrstica_številka Funkcija INDEX na podlagi številke vrstice vrne vrednost iz katerega koli stolpca, ki ga določite.
Če želite na primer poiskati površino oceana v E1, lahko uporabite to formulo:
=INDEX(B2:B6, XMATCH(E1, A2:A6))
INDEX XMATCH XMATCH za izvajanje dvodimenzionalnega iskanja
Če želite hkrati iskati v stolpcih in vrsticah, uporabite INDEX skupaj z dvema funkcijama XMATCH. Prva funkcija XMATCH bo dobila številko vrstice, druga pa številko stolpca:
INDEX ( podatki , XMATCH ( lookup_value , navpični _ lookup_array ), XMATCH ( vrednost iskanja , vodoravni _ lookup_array ))Formula je podobna formuli INDEX MATCH MATCH, le da lahko izpustite match_mode argument, saj je privzeta vrednost natančno ujemanje.
Na primer, če želite pridobiti prodajno številko za določen artikel (G1) v določenem mesecu (G2), je formula naslednja:
=INDEX(B2:D8, XMATCH(G1, A2:A8), XMATCH(G2, B1:D1))
Kjer so B2:D8 podatkovne celice brez naslovov vrstic in stolpcev, A2:A8 je seznam elementov, B1:D1 pa so imena mesecev.
Formula XMATCH, občutljiva na velike črke
Kot smo že omenili, je funkcija Excel XMATCH zasnovana tako, da ne upošteva velikih in malih črk. Če želite, da funkcija razlikuje velike in male črke besedila, uporabite XMATCH v kombinaciji s funkcijo EXACT:
MATCH(TRUE, EXACT( lookup_array , lookup_value ))Iskanje v obratni vrstni red od zadnjega do prvega:
MATCH(TRUE, EXACT( lookup_array , lookup_value ), 0, -1)Naslednji primer prikazuje to splošno formulo v akciji. Predpostavimo, da imate seznam identifikatorjev izdelkov, ki se razlikujejo po velikosti črk, v razdelkih B2:B11. Želite poiskati relativni položaj elementa v razdelku E1. Formula, ki razlikuje po velikosti črk, v razdelku E2 je tako preprosta kot ta:
=XMATCH(TRUE, EXACT(B2:B11, E1))
Kako deluje ta formula:
Funkcija EXACT primerja vrednost iskanja z vsakim elementom v polju iskanja. Če sta primerjani vrednosti popolnoma enaki, vključno z velikostjo znakov, funkcija vrne TRUE, sicer pa FALSE. To polje logičnih vrednosti (kjer TRUE pomeni natančno ujemanje) gre v polje lookup_array Ker je vrednost iskanja TRUE, funkcija XMATCH vrne položaj prvega najdenega natančnega ujemanja ali zadnjega natančnega ujemanja, odvisno od tega, kako ste konfigurirali search_mode argument.
XMATCH proti MATCH v Excelu
Funkcija XMATCH je bila zasnovana kot zmogljivejša in vsestranska zamenjava za MATCH, zato imata ti dve funkciji veliko skupnega.
Drugačno privzeto vedenje
Funkcija MATCH privzeto izbere natančno ujemanje ali naslednji najmanjši element ( match_type nastavljena na 1 ali izpuščena).
Privzeta vrednost funkcije XMATCH je natančno ujemanje ( match_mode nastavljena na 0 ali izpuščena).
Drugačno obnašanje pri približnem ujemanju
Ko match_mode / match_type je nastavljen na 1:
- MATCH išče natančno ujemanje ali naslednje najmanjše ujemanje. Zahteva, da je polje iskanja razvrščeno v naraščajočem vrstnem redu.
- XMATCH išče natančno ujemanje ali naslednje največje ujemanje. Ne zahteva razvrščanja.
Ko match_mode / match_type argument je nastavljen na -1:
- MATCH išče natančno ujemanje ali naslednje največje ujemanje. Zahteva razvrstitev matrike iskanja v padajočem vrstnem redu.
- XMATCH išče natančno ujemanje ali naslednje najmanjše ujemanje. Ne zahteva razvrščanja.
Iskanje z nadomestnimi znaki
Če želite z orodjem XMATCH poiskati delna ujemanja, morate nastaviti match_mode argument na 2.
Funkcija MATCH nima posebne možnosti načina ujemanja z nadomestnimi znaki. V večini primerov jo boste konfigurirali za natančno ujemanje ( match_type nastavljena na 0), kar deluje tudi pri iskanju z nadomestnimi znaki.
Način iskanja
Podobno kot nova funkcija XLOOKUP ima tudi funkcija XMATCH posebno search_mode argument, ki vam omogoča, da določite smer iskanja :
- 1 ali izpuščeno (privzeto) - iskanje od prvega do zadnjega.
- -1 - obratno iskanje od zadnjega do prvega.
In izberite algoritem binarnega iskanja , ki je zelo hiter in učinkovit na razvrščeni podatki .
- 2 - binarno iskanje po naraščajoče razvrščenih podatkih.
- -2 - binarno iskanje podatkov, razvrščenih padajoče.
Binarno iskanje , imenovan tudi iskanje po polovičnem intervalu ali logaritemsko iskanje , je poseben algoritem, ki najde položaj iskane vrednosti v polju tako, da jo primerja s srednjim elementom polja. Binarno iskanje je veliko hitrejše od običajnega iskanja, vendar pravilno deluje le na razvrščenih seznamih. Pri nesortiranih podatkih lahko vrne napačne rezultate, ki so na prvi pogled morda videti povsem običajni.
Sintaksa MATCH sploh ne predvideva argumenta načina iskanja.
XMATCH nativno obdeluje polja
Funkcija XMATCH je bila za razliko od svoje predhodnice zasnovana za dinamični Excel in nativno obdeluje polja, ne da bi vam bilo treba pritisniti Ctrl + Shift + Enter . Zaradi tega je oblikovanje in urejanje formul veliko lažje, zlasti če skupaj uporabljate več različnih funkcij. Primerjajte samo naslednje rešitve:
- Formula, občutljiva na velike črke: XMATCH
- primerjanje dveh stolpcev ali seznamov za ujemanje: XMATCH
Razpoložljivost funkcij XMATCH in MATCH
XMATCH je nova funkcija in je na voljo samo v Excelu za Microsoft 365 in Excelu 2021.
Funkcija MATCH je na voljo v vseh različicah programa Excel 365 do Excel 2007.
To je način uporabe funkcije XMATCH v Excelu. Zahvaljujem se vam za branje in upam, da se naslednji teden vidimo na našem blogu!
Praktični delovni zvezek za prenos
Primeri formul Excel XMATCH (.xlsx datoteka)