Jak porovnat dva sloupce v aplikaci Excel pomocí funkce VLOOKUP

  • Sdílet Toto
Michael Brown

Tento návod ukazuje, jak použít vzorec VLOOKUP v aplikaci Excel k porovnání dvou sloupců a získání společných hodnot (shody) nebo zjištění chybějících údajů (rozdíly).

Pokud máte data ve dvou různých seznamech, můžete je často potřebovat porovnat, abyste zjistili, jaké informace v jednom ze seznamů chybí nebo jaké údaje jsou přítomny v obou seznamech. Porovnání lze provést mnoha různými způsoby - který způsob použijete, závisí na tom, co přesně od něj chcete.

    Jak porovnat dva sloupce v aplikaci Excel pomocí funkce VLOOKUP

    Pokud máte dva sloupce dat a chcete zjistit, které datové body z jednoho seznamu se vyskytují v druhém seznamu, můžete použít funkci VLOOKUP a porovnat seznamy na společné hodnoty.

    Pro sestavení vzorce VLOOKUP v jeho základní podobě je třeba provést následující kroky:

    • Pro lookup_value (1. argument), použijte nejvyšší buňku ze seznamu 1.
    • Pro table_array (2. argument), zadejte celý seznam 2.
    • Pro col_index_num (3. argument), použijte 1, protože v poli je pouze jeden sloupec.
    • Pro range_lookup (4. argument), nastavte FALSE - přesná shoda.

    Předpokládejme, že máte jména účastníků ve sloupci A (seznam 1) a jména těch, kteří prošli kvalifikačními koly, ve sloupci B (seznam 2). Chcete porovnat tyto dva seznamy a určit, kteří účastníci ze skupiny A se dostali do hlavní soutěže. K tomu použijte následující vzorec.

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

    Vzorec přejde do buňky E2 a pak jej přetáhnete dolů přes tolik buněk, kolik je položek v seznamu 1.

    Všimněte si, že table_array je uzamčen pomocí absolutních odkazů ($C$2:$C$9), takže zůstane konstantní, když vzorec zkopírujete do následujících buněk.

    Jak vidíte, jména kvalifikovaných sportovců se zobrazí ve sloupci E. U zbývajících účastníků se zobrazí chyba #N/A, která znamená, že jejich jména nejsou v seznamu 2 k dispozici.

    Převlek #N/A chyby

    Výše popsaný vzorec VLOOKUP dokonale splňuje svůj hlavní cíl - vrací společné hodnoty a identifikuje chybějící datové body. Přináší však řadu chyb #N/A, které mohou nezkušené uživatele zmást a vyvolat v nich dojem, že se vzorcem není něco v pořádku.

    Nahrazení chyb pomocí prázdné buňky , použijte VLOOKUP v kombinaci s funkcí IFNA nebo IFERROR tímto způsobem:

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

    Náš vylepšený vzorec vrací místo #N/A prázdný řetězec (""). vlastní text například "Není v seznamu 2", "Není přítomen" nebo "Není k dispozici". Například:

    =IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "Není v seznamu 2")

    To je základní vzorec VLOOKUP pro porovnání dvou sloupců v aplikaci Excel. V závislosti na konkrétní úloze jej lze upravit podle dalších příkladů.

    Porovnání dvou sloupců v různých listech aplikace Excel pomocí funkce VLOOKUP

    V reálném životě se sloupce, které potřebujete porovnat, nenacházejí vždy na stejném listu. V malém souboru dat můžete zkusit zjistit rozdíly ručně tak, že si prohlédnete dva listy vedle sebe.

    Chcete-li hledat v jiném listu nebo sešitě se vzorci, musíte použít externí odkaz. Nejlepším postupem je začít psát vzorec na hlavním listu, pak se přepnout na jiný list a vybrat seznam pomocí myši - do vzorce se automaticky přidá příslušný odkaz na rozsah.

    Za předpokladu, že seznam 1 je ve sloupci A na stránce List1 a seznam 2 je ve sloupci A na List2 , můžete porovnat dva sloupce a najít shody pomocí tohoto vzorce:

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

    Další informace naleznete na adrese:

    • VLOOKUP z jiného listu
    • VLOOKUP z jiného sešitu

    Porovnání dvou sloupců a vrácení společných hodnot (shod)

    V předchozích příkladech jsme probrali vzorec VLOOKUP v jeho nejjednodušší podobě:

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

    Výsledkem tohoto vzorce je seznam hodnot, které existují v obou sloupcích, a prázdné buňky na místě hodnot, které nejsou k dispozici ve druhém sloupci.

    Chcete-li získat seznam běžných hodnot bez mezer, stačí do výsledného sloupce přidat automatický filtr a odfiltrovat prázdná místa.

    V aplikacích Excel pro Microsoft 365 a Excel 2021, které podporují dynamická pole, můžete k dynamickému vyřazení prázdných polí využít funkci FILTR. Jako kritérium pro FILTR přitom použijte vzorec IFNA VLOOKUP:

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

    Věnujte prosím pozornost tomu, že v tomto případě dodáváme celý seznam 1 (A2:A14) do. lookup_value Funkce porovná každou z hodnot vyhledávání se seznamem 2 (C2:C9) a vrátí pole shod a chyb #N/A, které představují chybějící hodnoty. Funkce IFNA nahradí chyby prázdnými řetězci a výsledky předá funkci FILTER, která odfiltruje prázdné znaky ("") a jako konečný výsledek vypíše pole shod.

    Případně můžete použít funkci ISNA pro kontrolu výsledku VLOOKUP a vyfiltrovat položky s vyhodnocením FALSE, tj. jiné hodnoty než chyby #N/A:

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

    Stejného výsledku lze dosáhnout pomocí funkce XLOOKUP, která vzorec ještě více zjednodušuje. Díky schopnosti funkce XLOOKUP interně zpracovávat chyby #N/A (volitelná možnost if_not_found argument), obejdeme se bez obalu IFNA nebo ISNA:

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

    Porovnání dvou sloupců a zjištění chybějících hodnot (rozdílů)

    Chcete-li v aplikaci Excel porovnat 2 sloupce a zjistit rozdíly, můžete postupovat tímto způsobem:

    1. Napište základní vzorec pro hledání první hodnoty ze seznamu 1 (A2) v seznamu 2 ($C$2:$C$9):

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

    2. Výše uvedený vzorec vložte do funkce ISNA, abyste zkontrolovali výstup VLOOKUP na chyby #N/A. V případě chyby dává ISNA hodnotu TRUE, jinak FALSE:

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

    3. Pro logický test funkce IF použijte vzorec ISNA VLOOKUP. Pokud je test vyhodnocen jako TRUE (chyba #N/A), vraťte ve stejném řádku hodnotu ze Seznamu 1. Pokud je test vyhodnocen jako FALSE (nalezena shoda v Seznamu 2), vraťte prázdný řetězec.

    Úplný vzorec má tento tvar:

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

    Chcete-li se zbavit prázdných míst, použijte filtr aplikace Excel, jak je ukázáno ve výše uvedeném příkladu.

    V aplikacích Excel 365 a Excel 2021 můžete nechat seznam výsledků filtrovat dynamicky. Za tímto účelem jednoduše umístěte vzorec ISNA VLOOKUP do pole. zahrnout argumentu funkce FILTER:

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

    Jiným způsobem je použití funkce XLOOKUP pro kritéria - funkce vrací prázdné řetězce ("") pro chybějící datové body a vy filtrujete hodnoty v seznamu 1, pro které funkce XLOOKUP vrátila prázdné řetězce (=""):

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

    Vzorec VLOOKUP pro identifikaci shod a rozdílů mezi dvěma sloupci

    Pokud chcete do prvního seznamu přidat textové popisky, které udávají, které hodnoty jsou v druhém seznamu k dispozici a které nikoli, použijte vzorec VLOOKUP spolu s funkcemi IF a ISNA/ISERROR.

    Například pro identifikaci jmen, která jsou ve sloupcích A i D, a jmen, která jsou pouze ve sloupci A, se použije vzorec:

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

    Zde funkce ISNA zachytí chyby #N/A generované funkcí VLOOKUP a předá tento mezivýsledek funkci IF, která vrátí zadaný text pro chyby a jiný text pro úspěšná vyhledávání.

    V tomto příkladu jsme použili štítky "Nekvalifikovaný"/"Kvalifikovaný", které jsou vhodné pro náš vzorový soubor dat. Můžete je nahradit štítky "Není v seznamu 2"/"V seznamu 2", "Není k dispozici"/"K dispozici" nebo jakýmikoli jinými štítky, které považujete za vhodné.

    Tento vzorec je nejvhodnější vložit do sloupce sousedícího se seznamem 1 a zkopírovat jej do tolika buněk, kolik je položek v seznamu.

    Dalším způsobem, jak identifikovat shody a rozdíly ve 2 sloupcích, je použití funkce MATCH:

    =IF(ISNA(MATCH(A2, $D$2:$D$9, 0)), "Není v seznamu 2", "V seznamu 2")

    Porovnání 2 sloupců a vrácení hodnoty ze třetího sloupce

    Při práci s tabulkami obsahujícími související data můžete někdy potřebovat porovnat dva sloupce ve dvou různých tabulkách a vrátit odpovídající hodnotu z jiného sloupce. To je vlastně primární použití funkce VLOOKUP, tedy účel, pro který byla navržena.

    Například pro porovnání jmen ve sloupcích A a D ve dvou tabulkách níže a vrácení času ze sloupce E je vzorec následující:

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

    Chcete-li skrýt chyby #N/A, použijte osvědčené řešení - funkci IFNA:

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

    Místo prázdných míst můžete pro chybějící datové body vrátit libovolný text - stačí jej zadat do posledního argumentu. Například:

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

    Kromě funkce VLOOKUP lze úlohu splnit pomocí několika dalších vyhledávacích funkcí.

    Osobně bych se spoléhal na flexibilnější vzorec INDEX MATCH:

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

    Nebo použijte moderního nástupce funkce VLOOKUP - funkci XLOOKUP, která je k dispozici v aplikacích Excel 365 a Excel 2021:

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

    Chcete-li získat jména kvalifikovaných účastníků ze skupiny A a jejich výsledky, jednoduše odfiltrujte prázdné buňky ve sloupci B:

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

    Srovnávací nástroje

    Pokud často porovnáváte soubory nebo data v aplikaci Excel, tyto chytré nástroje obsažené v naší sadě Ultimate Suite vám mohou výrazně ušetřit čas!

    Porovnání tabulek - rychlý způsob vyhledávání duplicit (shod) a jedinečných hodnot (rozdílů) v libovolných dvou datových sadách, jako jsou sloupce, seznamy nebo tabulky.

    Porovnání dvou listů - vyhledání a zvýraznění rozdílů mezi dvěma listy.

    Porovnání více listů - vyhledejte a zvýrazněte rozdíly ve více listech najednou.

    Cvičebnice ke stažení

    VLOOKUP v Excelu pro porovnání sloupců - příklady (.xlsx soubor)

    Michael Brown je oddaný technologický nadšenec s vášní pro zjednodušování složitých procesů pomocí softwarových nástrojů. S více než desetiletými zkušenostmi v technologickém průmyslu zdokonalil své dovednosti v aplikacích Microsoft Excel a Outlook a také v Tabulkách a Dokumentech Google. Michaelův blog je věnován sdílení jeho znalostí a odborných znalostí s ostatními a poskytuje snadno pochopitelné tipy a návody pro zlepšení produktivity a efektivity. Ať už jste zkušený profesionál nebo začátečník, Michaelův blog nabízí cenné postřehy a praktické rady, jak tyto základní softwarové nástroje co nejlépe využít.