Funkcia Excel MATCH s príkladmi vzorcov

  • Zdieľajte To
Michael Brown

Tento návod vysvetľuje, ako používať funkciu MATCH v programe Excel s príkladmi vzorcov. Ukazuje tiež, ako zlepšiť vyhľadávacie vzorce vytvorením dynamického vzorca pomocou VLOOKUP a MATCH.

V programe Microsoft Excel existuje mnoho rôznych vyhľadávacích/referenčných funkcií, ktoré vám môžu pomôcť nájsť určitú hodnotu v rozsahu buniek, a funkcia MATCH je jednou z nich. V podstate identifikuje relatívnu pozíciu položky v rozsahu buniek. Funkcia MATCH však dokáže oveľa viac než len svoju čistú podstatu.

    Funkcia Excel MATCH - syntax a použitie

    Funkcia MATCH v programe Excel vyhľadá zadanú hodnotu v rozsahu buniek a vráti relatívnu pozíciu tejto hodnoty.

    Syntax funkcie MATCH je nasledujúca:

    MATCH(lookup_value, lookup_array, [match_type])

    Lookup_value (povinné) - hodnota, ktorú chcete nájsť. Môže to byť číselná, textová alebo logická hodnota, ako aj odkaz na bunku.

    Lookup_array (povinné) - rozsah buniek, v ktorých sa má vyhľadávať.

    Match_type (nepovinné) - definuje typ zhody. Môže mať jednu z týchto hodnôt: 1, 0, -1. Argument match_type nastavený na hodnotu 0 vráti iba presnú zhodu, zatiaľ čo ostatné dva typy umožňujú približnú zhodu.

    • 1 alebo vynechať (predvolené) - nájsť najväčšia hodnota v poli vyhľadávania, ktoré je menšie alebo rovné hodnote vyhľadávania. Vyžaduje zoradenie poľa vyhľadávania vzostupne, od najmenšieho po najväčšie alebo od A po Z.
    • 0 - nájdite prvú hodnotu v poli, ktorá je presne rovnaké k hodnote vyhľadávania. Nevyžaduje sa žiadne triedenie.
    • -1 - nájdite najmenšia hodnota v poli, ktoré je väčšie alebo rovné hodnote vyhľadávania. Pole vyhľadávania by malo byť zoradené zostupne, od najväčšieho po najmenšie alebo od Z po A.

    Aby sme lepšie pochopili funkciu MATCH, vytvorme jednoduchý vzorec na základe týchto údajov: mená študentov v stĺpci A a ich výsledky skúšok v stĺpci B, zoradené od najväčšieho po najmenší. Ak chcete zistiť, kde sa nachádza konkrétny študent (napr, Laura ) sa okrem iného používa tento jednoduchý vzorec:

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

    Prípadne môžete hodnotu vyhľadávania umiestniť do niektorej bunky (v tomto príklade E1) a odkazovať na túto bunku vo vzorci Excel Match:

    =MATCH(E1, A2:A8, 0)

    Ako vidíte na obrázku vyššie, mená študentov sú zadané v ľubovoľnom poradí, a preto sme nastavili match_type argument na 0 (presná zhoda), pretože iba tento typ zhody nevyžaduje triedenie hodnôt v poli vyhľadávania. Technicky vzorec Match vracia relatívnu pozíciu Laury v rozsahu. Ale keďže skóre je zoradené od najväčšieho po najmenšie, hovorí nám aj to, že Laura má 5. najlepšie skóre spomedzi všetkých študentov.

    Tip. V aplikáciách Excel 365 a Excel 2021 môžete používať funkciu XMATCH, ktorá je modernejším a výkonnejším nástupcom funkcie MATCH.

    4 veci, ktoré by ste mali vedieť o funkcii MATCH

    Ako ste sa práve presvedčili, používanie funkcie MATCH v programe Excel je jednoduché. Ako v prípade takmer každej funkcie, aj tu však existuje niekoľko špecifík, ktoré by ste mali poznať:

    1. Funkcia MATCH vracia relatívna poloha hodnoty vyhľadávania v poli, nie samotnej hodnoty.
    2. MATCH je rozlišovanie veľkých a malých písmen , čo znamená, že pri práci s textovými hodnotami nerozlišuje medzi malými a veľkými písmenami.
    3. Ak vyhľadávacie pole obsahuje niekoľko výskytov vyhľadávanej hodnoty, vráti sa pozícia prvej hodnoty.
    4. Ak sa hodnota vyhľadávania nenachádza v poli vyhľadávania, vráti sa chyba #N/A.

    Ako používať MATCH v programe Excel - príklady vzorcov

    Teraz, keď už poznáte základné spôsoby použitia funkcie Excel MATCH, preberieme niekoľko ďalších príkladov vzorcov, ktoré idú nad rámec základov.

    Čiastočná zhoda so zástupnými znakmi

    Podobne ako mnohé iné funkcie, aj MATCH rozumie nasledujúcim zástupným znakom:

    • otáznik (?) - nahrádza akýkoľvek jeden znak
    • Hviezdička (*) - nahrádza ľubovoľnú postupnosť znakov

    Poznámka: Zástupné znaky možno použiť len vo vzorcoch Match s match_type nastavená na 0.

    Vzorec zhody so zástupnými znakmi je užitočný v situáciách, keď chcete porovnať nie celý textový reťazec, ale len niektoré znaky alebo časť reťazca. Na ilustráciu uveďte nasledujúci príklad.

    Predpokladajme, že máte k dispozícii zoznam regionálnych predajcov a ich predajné sumy za uplynulý mesiac. Chcete zistiť relatívnu pozíciu určitého predajcu v zozname (zoradeného podľa predajných súm zostupne), ale nemôžete si presne zapamätať jeho meno, hoci si pamätáte niekoľko prvých znakov.

    Za predpokladu, že názvy predajcov sú v rozsahu A2:A11 a hľadáte názov, ktorý začína slovom "car", vzorec vyzerá takto:

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

    Aby bol náš vzorec na porovnávanie univerzálnejší, môžete zadať vyhľadávaciu hodnotu do niektorej bunky (v tomto príklade E1) a spojiť túto bunku so zástupným znakom takto:

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

    Ako je znázornené na obrázku nižšie, vzorec vráti hodnotu 2, čo je pozícia "Carter":

    Ak chcete nahradiť len jeden znak v hodnote vyhľadávania, použite operátor "?", napríklad takto:

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

    Vyššie uvedený vzorec bude zodpovedať názvu " Baker " a znovu spustite jeho relatívnu polohu, ktorá je 5.

    Vzorec MATCH citlivý na veľkosť písmen

    Ako bolo spomenuté na začiatku tohto návodu, funkcia MATCH nerozlišuje veľké a malé písmená. Ak chcete vytvoriť vzorec Match s rozlišovaním veľkých a malých písmen, použite MATCH v kombinácii s funkciou EXACT, ktorá porovnáva bunky presne vrátane veľkosti znakov.

    Tu je všeobecný vzorec na porovnávanie údajov podľa veľkosti písmen:

    MATCH(TRUE, EXACT( vyhľadávacie pole , vyhľadávacia hodnota ), 0)

    Vzorec funguje na základe nasledujúcej logiky:

    • Funkcia EXACT porovnáva hodnotu vyhľadávania s každým prvkom vyhľadávacieho poľa. Ak sa porovnávané bunky presne rovnajú, funkcia vráti TRUE, v opačnom prípade FALSE.
    • A potom funkcia MATCH porovnáva TRUE (čo je jej lookup_value ) s každou hodnotou v poli vrátenom príkazom EXACT a vráti pozíciu prvej zhody.

    Nezabudnite, že ide o vzorec poľa, ktorý si na správne dokončenie vyžaduje stlačenie klávesovej skratky Ctrl + Shift + Enter.

    Za predpokladu, že hodnota vyhľadávania je v bunke E1 a vyhľadávacie pole je A2:A9, vzorec je nasledujúci:

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

    Nasledujúca snímka obrazovky zobrazuje vzorec pre porovnávanie veľkých a malých písmen v programe Excel:

    Porovnanie 2 stĺpcov pre zhody a rozdiely (ISNA MATCH)

    Kontrola dvoch zoznamov na zhody a rozdiely je jednou z najbežnejších úloh v programe Excel a možno ju vykonať rôznymi spôsobmi. Jedným z nich je vzorec ISNA/MATCH:

    IF(ISNA(MATCH( 1. hodnota v zozname1 , Zoznam2 , 0)), "Nie je v zozname 1", "")

    Pre akúkoľvek hodnotu zoznamu 2, ktorá sa nenachádza v zozname 1, vzorec vráti " Nie je v zozname 1 ". A tu je návod:

    • Funkcia MATCH hľadá hodnotu zo zoznamu 1 v zozname 2. Ak sa hodnota nájde, vráti jej relatívnu pozíciu, v opačnom prípade vráti chybu #N/A.
    • Funkcia ISNA v programe Excel robí len jednu vec - kontroluje chyby #N/A (čo znamená "nie je k dispozícii"). Ak je daná hodnota chybou #N/A, funkcia vráti TRUE, v opačnom prípade FALSE. V našom prípade TRUE znamená, že hodnota zo zoznamu 1 sa nenachádza v zozname 2 (t. j. MATCH vráti chybu #N/A).
    • Pretože pre používateľov môže byť veľmi mätúce vidieť TRUE pre hodnoty, ktoré sa v zozname 1 nevyskytujú, obklopíte funkciu IF okolo ISNA a zobrazíte " Nie je v zozname 1 " alebo akýkoľvek iný text.

    Ak chcete napríklad porovnať hodnoty v stĺpci B s hodnotami v stĺpci A, vzorec má nasledujúci tvar (kde B2 je najvyššia bunka):

    =IF(ISNA(MATCH(B2,A:A,0)), "Nie je v zozname 1", "")

    Ako si pamätáte, funkcia MATCH v programe Excel sama o sebe nerozlišuje veľké a malé písmená. Ak chcete, aby rozlišovala veľkosť znakov, vložte funkciu EXACT do príkazu lookup_array a nezabudnite stlačiť klávesovú skratku Ctrl + Shift + Enter, aby ste to dokončili. vzorec poľa :

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

    Nasledujúci obrázok zobrazuje oba vzorce v akcii:

    Ďalšie spôsoby porovnania dvoch zoznamov v programe Excel nájdete v nasledujúcom návode: Ako porovnať 2 stĺpce v programe Excel.

    Excel VLOOKUP a MATCH

    Tento príklad predpokladá, že už máte základné znalosti o funkcii Excel VLOOKUP. A ak ich máte, je pravdepodobné, že ste narazili na jej početné obmedzenia (ktorých podrobný prehľad nájdete v článku Prečo Excel VLOOKUP nefunguje) a hľadáte robustnejšiu alternatívu.

    Jednou z najnepríjemnejších nevýhod VLOOKUP je, že po vložení alebo odstránení stĺpca v rámci vyhľadávacej tabuľky prestane fungovať. Stáva sa to preto, lebo VLOOKUP vytiahne zodpovedajúcu hodnotu na základe čísla návratového stĺpca, ktoré ste zadali (číslo indexu). indexové číslo je "natvrdo" zakódovaný vo vzorci, Excel ho nedokáže upraviť, keď sa do tabuľky pridá nový stĺpec (stĺpce) alebo sa z nej odstráni.

    Funkcia Excel MATCH pracuje s relatívna poloha vyhľadávacej hodnoty, vďaka čomu sa dokonale hodí pre col_index_num Inými slovami, namiesto zadania návratového stĺpca ako statického čísla použijete MATCH na získanie aktuálnej pozície tohto stĺpca.

    Pre ľahšie pochopenie použijeme opäť tabuľku s výsledkami skúšok študentov (podobnú tej, ktorú sme použili na začiatku tohto návodu), ale tentoraz budeme získavať skutočné skóre a nie jeho relatívnu pozíciu.

    Ak predpokladáme, že vyhľadávacia hodnota je v bunke F1, pole tabuľky je $A$1:$C$2 (ak plánujete vzorec kopírovať do iných buniek, je dobré ho zamknúť pomocou absolútnych odkazov na bunky), vzorec vyzerá takto:

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

    Tretí argument ( col_index_num ) je nastavená na 3, pretože Skóre matematiky ktorý chceme vytiahnuť, je 3. stĺpec tabuľky. Ako môžete vidieť na snímke nižšie, tento bežný vzorec Vlookup funguje dobre:

    Ale len dovtedy, kým nevložíte alebo neodstránite stĺpec (stĺpce):

    Prečo je chyba #REF!? Pretože col_index_num nastavená na hodnotu 3 hovorí programu Excel, aby získal hodnotu z tretieho stĺpca, zatiaľ čo teraz sú v poli tabuľky len 2 stĺpce.

    Aby ste takýmto veciam predišli, môžete vzorec Vlookup urobiť dynamickejším tak, že doň zaradíte nasledujúcu funkciu Match:

    MATCH(E2,A1:C1,0)

    Kde:

    • E2 je vyhľadávacia hodnota, ktorá je presne rovnaké na názov návratového stĺpca, t. j. stĺpca, z ktorého chcete vytiahnuť hodnotu ( Skóre matematiky v tomto príklade).
    • A1:C1 je vyhľadávacie pole obsahujúce hlavičky tabuliek.

    A teraz zahrňte túto funkciu Match do col_index_num argumentu vášho vzorca Vlookup, napríklad takto:

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

    A uistite sa, že funguje bezchybne bez ohľadu na to, koľko stĺpcov pridáte alebo odstránite:

    Na vyššie uvedenej snímke obrazovky som uzamkol všetky odkazy na bunky, aby vzorec správne fungoval aj v prípade, že ho používatelia presunú na iné miesto v pracovnom hárku. Ako môžete vidieť na snímke obrazovky nižšie, vzorec funguje v poriadku aj po odstránení stĺpca; navyše je Excel dostatočne inteligentný na to, aby v tomto prípade správne upravil absolútne odkazy:

    Excel HLOOKUP a MATCH

    Podobným spôsobom môžete použiť funkciu Excel MATCH na zlepšenie vzorcov HLOOKUP. Všeobecný princíp je v podstate rovnaký ako v prípade Vlookup: pomocou funkcie Match získate relatívnu pozíciu návratového stĺpca a toto číslo dodáte do funkcie row_index_num argumentu vášho vzorca Hlookup.

    Predpokladajme, že vyhľadávacia hodnota je v bunke B5, tabuľkové pole je B1:H3, názov návratového riadku (vyhľadávacia hodnota pre MATCH) je v bunke A6 a záhlavia riadkov sú A1:A3, kompletný vzorec je nasledujúci:

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

    Ako ste práve videli, kombinácia Hlookup/Vlookup & Match je určite lepšia ako bežné vzorce Hlookup a Vlookup. Funkcia MATCH však neodstraňuje všetky ich obmedzenia. Najmä vzorec Vlookup Match stále nemôže hľadať v ľavom riadku a Hlookup Match nedokáže hľadať v žiadnom inom riadku ako v najvyššom.

    Ak chcete prekonať vyššie uvedené (a niekoľko ďalších) obmedzení, zvážte použitie kombinácie INDEX MATCH, ktorá poskytuje skutočne výkonný a všestranný spôsob vyhľadávania v programe Excel, v mnohých ohľadoch lepší ako VLOOKUP a HLOOKUP. Podrobný návod a príklady vzorcov nájdete v článku INDEX & amp; MATCH v programe Excel - lepšia alternatíva k VLOOKUP.

    Takto sa používajú vzorce MATCH v programe Excel. Dúfam, že príklady uvedené v tomto návode vám pomôžu pri vašej práci. Ďakujem vám za prečítanie a dúfam, že sa na našom blogu uvidíme budúci týždeň!

    Cvičebnica na stiahnutie

    Príklady vzorcov Excel MATCH (.xlsx súbor)

    Michael Brown je nadšený technologický nadšenec s vášňou pre zjednodušovanie zložitých procesov pomocou softvérových nástrojov. S viac ako desaťročnými skúsenosťami v technologickom priemysle si zdokonalil svoje zručnosti v programoch Microsoft Excel a Outlook, ako aj Tabuľky Google a Dokumenty. Michaelov blog je venovaný zdieľaniu svojich vedomostí a odborných znalostí s ostatnými a poskytuje jednoduché tipy a návody na zlepšenie produktivity a efektivity. Či už ste skúsený profesionál alebo začiatočník, Michaelov blog ponúka cenné poznatky a praktické rady, ako z týchto základných softvérových nástrojov vyťažiť maximum.