Ako porovnať dva stĺpce v programe Excel pomocou funkcie VLOOKUP

  • Zdieľajte To
Michael Brown

Tento návod ukazuje, ako použiť vzorec VLOOKUP v programe Excel na porovnanie dvoch stĺpcov s cieľom vrátiť spoločné hodnoty (zhody) alebo nájsť chýbajúce údaje (rozdiely).

Keď máte údaje v dvoch rôznych zoznamoch, často ich môžete potrebovať porovnať, aby ste zistili, aké informácie v jednom zo zoznamov chýbajú alebo aké údaje sú prítomné v oboch zoznamoch. Porovnávanie možno vykonať rôznymi spôsobmi - to, ktorú metódu použijete, závisí od toho, čo presne od neho chcete.

    Ako porovnať dva stĺpce v programe Excel pomocou funkcie VLOOKUP

    Ak máte dva stĺpce údajov a chcete zistiť, ktoré dátové body z jedného zoznamu existujú v druhom zozname, môžete použiť funkciu VLOOKUP na porovnanie zoznamov na spoločné hodnoty.

    Ak chcete vytvoriť vzorec VLOOKUP v jeho základnej podobe, musíte urobiť toto:

    • Pre lookup_value (1. argument), použite najvyššiu bunku zo zoznamu 1.
    • Pre table_array (2. argument), zadajte celý zoznam 2.
    • Pre col_index_num (3. argument), použite 1, pretože v poli je len jeden stĺpec.
    • Pre range_lookup (4. argument), nastavte FALSE - presná zhoda.

    Predpokladajme, že máte mená účastníkov v stĺpci A (zoznam 1) a mená tých, ktorí prešli kvalifikačnými kolami, v stĺpci B (zoznam 2). Chcete porovnať tieto dva zoznamy a určiť, ktorí účastníci zo skupiny A sa dostali do hlavného kola. Na tento účel použite nasledujúci vzorec.

    =VLOOKUP(A2, $C$2:$C$9, 1, FALSE)

    Vzorec prejde do bunky E2 a potom ho potiahnete nadol cez toľko buniek, koľko je položiek v zozname 1.

    Upozorňujeme, že table_array je uzamknutá pomocou absolútnych odkazov ($C$2:$C$9), takže zostane konštantná, keď vzorec skopírujete do nasledujúcich buniek.

    Ako vidíte, mená kvalifikovaných športovcov sa zobrazia v stĺpci E. V prípade ostatných účastníkov sa zobrazí chyba #N/A, ktorá znamená, že ich mená nie sú v zozname 2 k dispozícii.

    Prevlek #N/A chyby

    Vyššie uvedený vzorec VLOOKUP dokonale plní svoj hlavný cieľ - vracia spoločné hodnoty a identifikuje chýbajúce dátové body. Poskytuje však množstvo chýb #N/A, ktoré môžu neskúsených používateľov zmiasť a spôsobiť, že si budú myslieť, že so vzorcom nie je niečo v poriadku.

    Nahradenie chýb pomocou prázdne bunky , použite VLOOKUP v kombinácii s funkciou IFNA alebo IFERROR týmto spôsobom:

    =IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "")

    Náš vylepšený vzorec vráti prázdny reťazec ("") namiesto #N/A. vlastný text ako napríklad "Nie je v zozname 2", "Nie je prítomný" alebo "Nie je k dispozícii". Napríklad:

    =IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "Not in List 2")

    Toto je základný vzorec VLOOKUP na porovnanie dvoch stĺpcov v programe Excel. V závislosti od konkrétnej úlohy ho môžete upraviť podľa ďalších príkladov.

    Porovnanie dvoch stĺpcov v rôznych hárkoch programu Excel pomocou funkcie VLOOKUP

    V reálnom živote sa stĺpce, ktoré potrebujete porovnať, nenachádzajú vždy na tom istom hárku. V malom súbore údajov môžete skúsiť zistiť rozdiely ručne zobrazením dvoch hárkov vedľa seba.

    Ak chcete vyhľadávať v inom hárku alebo zošite so vzorcami, musíte použiť externý odkaz. Najlepším postupom je začať písať vzorec v hlavnom hárku, potom sa prepnúť na iný hárok a vybrať zoznam pomocou myši - do vzorca sa automaticky pridá príslušný odkaz na rozsah.

    Za predpokladu, že zoznam 1 je v stĺpci A na List1 a zoznam 2 je v stĺpci A na List2 , môžete porovnať dva stĺpce a nájsť zhodu pomocou tohto vzorca:

    =IFNA(VLOOKUP(A2, Sheet2!$A$2:$A$9, 1, FALSE), "")

    Viac informácií nájdete na:

    • VLOOKUP z iného listu
    • VLOOKUP z iného zošita

    Porovnať dva stĺpce a vrátiť spoločné hodnoty (zhody)

    V predchádzajúcich príkladoch sme sa zaoberali vzorcom VLOOKUP v jeho najjednoduchšej podobe:

    =IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "")

    Výsledkom tohto vzorca je zoznam hodnôt, ktoré existujú v oboch stĺpcoch, a prázdne bunky na mieste hodnôt, ktoré nie sú k dispozícii v druhom stĺpci.

    Ak chcete získať zoznam bežných hodnôt bez medzier, stačí do výsledného stĺpca pridať automatický filter a odfiltrovať prázdne miesta.

    V aplikáciách Excel pre Microsoft 365 a Excel 2021, ktoré podporujú dynamické polia, môžete na dynamické vyselektovanie prázdnych polí využiť funkciu FILTER. Na tento účel využite vzorec IFNA VLOOKUP ako kritérium pre FILTER:

    =FILTER(A2:A14, IFNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE), "")")

    Upozorňujeme, že v tomto prípade dodávame celý zoznam 1 (A2:A14) do lookup_value Funkcia porovnáva každú z hodnôt vyhľadávania so zoznamom 2 (C2:C9) a vracia pole zhody a chýb #N/A, ktoré predstavujú chýbajúce hodnoty. Funkcia IFNA nahrádza chyby prázdnymi reťazcami a výsledky poskytuje funkcii FILTER, ktorá odfiltruje prázdne znaky ("") a ako konečný výsledok vypíše pole zhody.

    Prípadne môžete použiť funkciu ISNA na kontrolu výsledku VLOOKUP a odfiltrovať položky s vyhodnotením FALSE, t. j. iné hodnoty ako chyby #N/A:

    =FILTER(A2:A14, ISNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE))=FALSE)

    Rovnaký výsledok možno dosiahnuť pomocou funkcie XLOOKUP, ktorá vzorec ešte viac zjednodušuje. Vďaka schopnosti funkcie XLOOKUP interne spracovať chyby #N/A (voliteľné if_not_found argument), môžeme sa zaobísť bez obalu IFNA alebo ISNA:

    =FILTER(A2:A14, XLOOKUP(A2:A14, C2:C9, C2:C9,"")")

    Porovnanie dvoch stĺpcov a zistenie chýbajúcich hodnôt (rozdielov)

    Ak chcete porovnať 2 stĺpce v programe Excel a nájsť rozdiely, môžete postupovať takto:

    1. Napíšte základný vzorec na hľadanie prvej hodnoty zo zoznamu 1 (A2) v zozname 2 ($C$2:$C$9):

      VLOOKUP(A2, $C$2:$C$9, 1, FALSE)

    2. Vloženie vyššie uvedeného vzorca do funkcie ISNA na kontrolu výstupu VLOOKUP na prítomnosť chýb #N/A. V prípade chyby ISNA poskytne TRUE, inak FALSE:

      ISNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE))

    3. Na logický test funkcie IF použite vzorec ISNA VLOOKUP. Ak sa test vyhodnotí ako TRUE (chyba #N/A), vráťte v tom istom riadku hodnotu zo zoznamu 1. Ak sa test vyhodnotí ako FALSE (nájde sa zhoda v zozname 2), vráťte prázdny reťazec.

    Úplný vzorec má tento tvar:

    =IF(ISNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE)), A2, "")

    Ak sa chcete zbaviť prázdnych miest, použite filter programu Excel, ako je uvedené v príklade vyššie.

    V aplikáciách Excel 365 a Excel 2021 môžete zoznam výsledkov filtrovať dynamicky. Na tento účel jednoducho umiestnite vzorec ISNA VLOOKUP do zahŕňajú . argument funkcie FILTER:

    =FILTER(A2:A14, ISNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE))

    Iný spôsob je použiť XLOOKUP pre kritériá - funkcia vráti prázdne reťazce ("") pre chýbajúce dátové body a vy filtrujete hodnoty v zozname 1, pre ktoré XLOOKUP vrátil prázdne reťazce (=""):

    =FILTER(A2:A14, XLOOKUP(A2:A14, C2:C9, C2:C9,"")="")

    Vzorec VLOOKUP na identifikáciu zhody a rozdielu medzi dvoma stĺpcami

    Ak chcete do prvého zoznamu pridať textové značky, ktoré označujú, ktoré hodnoty sú dostupné v druhom zozname a ktoré nie, použite vzorec VLOOKUP spolu s funkciami IF a ISNA/ISERROR.

    Napríklad na identifikáciu názvov, ktoré sú v stĺpcoch A aj D, a názvov, ktoré sú len v stĺpci A, sa použije vzorec:

    =IF(ISNA(VLOOKUP(A2, $D$2:$D$9, 1, FALSE)), "Nekvalifikovaný", "Kvalifikovaný")

    Tu funkcia ISNA zachytáva chyby #N/A vygenerované funkciou VLOOKUP a odovzdáva tento medzivýsledok funkcii IF, aby vrátila zadaný text v prípade chýb a iný text v prípade úspešných vyhľadávaní.

    V tomto príklade sme použili štítky "Not qualified"/"Qualified", ktoré sú vhodné pre náš súbor údajov. Môžete ich nahradiť štítkami "Not in List 2"/"In List 2", "Not available"/"Available" alebo akýmikoľvek inými štítkami, ktoré považujete za vhodné.

    Tento vzorec je najlepšie vložiť do stĺpca susediaceho so zoznamom 1 a skopírovať ho do toľkých buniek, koľko je položiek v zozname.

    Ďalším spôsobom, ako identifikovať zhody a rozdiely v 2 stĺpcoch, je použitie funkcie MATCH:

    =IF(ISNA(MATCH(A2, $D$2:$D$9, 0)), "Not in List 2", "In List 2")

    Porovnanie 2 stĺpcov a vrátenie hodnoty z tretieho stĺpca

    Pri práci s tabuľkami obsahujúcimi súvisiace údaje môžete niekedy potrebovať porovnať dva stĺpce v dvoch rôznych tabuľkách a vrátiť zodpovedajúcu hodnotu z iného stĺpca. V skutočnosti je to primárne použitie funkcie VLOOKUP, teda účel, na ktorý bola navrhnutá.

    Ak chcete napríklad porovnať názvy v stĺpcoch A a D v dvoch tabuľkách nižšie a vrátiť čas zo stĺpca E, vzorec je:

    =VLOOKUP(A3, $D$3:$E$10, 2, FALSE)

    Ak chcete skryť chyby #N/A, použite osvedčené riešenie - funkciu IFNA:

    =IFNA(VLOOKUP(A3, $D$3:$E$10, 2, FALSE), "")

    Namiesto prázdnych miest môžete pre chýbajúce dátové body vrátiť akýkoľvek text - stačí ho zadať do posledného argumentu. Napríklad:

    =IFNA(VLOOKUP(A3, $D$3:$E$10, 2, FALSE), "Nie je k dispozícii")

    Okrem funkcie VLOOKUP je možné túto úlohu splniť pomocou niekoľkých ďalších vyhľadávacích funkcií.

    Osobne by som sa spoliehal na flexibilnejší vzorec INDEX MATCH:

    =IFNA(INDEX($E$3:$E$10, MATCH(A3, $D$3:$D$10, 0)), "")

    Alebo použite moderného nástupcu funkcie VLOOKUP - funkciu XLOOKUP, ktorá je k dispozícii v aplikáciách Excel 365 a Excel 2021:

    =XLOOKUP(A3, $D$3:$D$10, $E$3:$E$10, "")

    Ak chcete získať mená kvalifikovaných účastníkov zo skupiny A a ich výsledky, jednoducho odfiltrujte prázdne bunky v stĺpci B:

    =FILTER(A3:B15, B3:B15"")

    Nástroje na porovnávanie

    Ak často porovnávate súbory alebo údaje v programe Excel, tieto inteligentné nástroje zahrnuté v našom balíku Ultimate Suite vám môžu výrazne ušetriť čas!

    Porovnanie tabuliek - rýchly spôsob, ako nájsť duplicity (zhody) a jedinečné hodnoty (rozdiely) v akýchkoľvek dvoch súboroch údajov, ako sú stĺpce, zoznamy alebo tabuľky.

    Porovnanie dvoch hárkov - nájdite a zvýraznite rozdiely medzi dvoma pracovnými hárkami.

    Porovnanie viacerých hárkov - nájdite a zvýraznite rozdiely vo viacerých hárkoch naraz.

    Cvičebnica na stiahnutie

    VLOOKUP v programe Excel na porovnanie stĺpcov - príklady (.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.