Ako vykonať Vlookup s rozlišovaním veľkých a malých písmen v programe Excel - príklady vzorcov

  • Zdieľajte To
Michael Brown

Učebnica vysvetľuje, ako v programe Excel VLOOKUP rozlišovať veľké a malé písmená, demonštruje niekoľko ďalších vzorcov, ktoré rozlišujú veľké a malé písmená textu, a poukazuje na silné stránky a obmedzenia jednotlivých funkcií.

Hádam každý používateľ programu Excel vie, aká funkcia vykonáva vertikálne vyhľadávanie v programe Excel. Správne, je to VLOOKUP. Len málo ľudí však vie, že VLOOKUP programu Excel nerozlišuje veľké a malé písmená, čo znamená, že malé a veľké písmená považuje za rovnaké znaky.

Tu je rýchly príklad, ktorý demonštruje neschopnosť VLOOKUP rozlišovať veľké a malé písmená textu. Predpokladajme, že v bunke A2 máte "bill" a v bunke A4 "Bill". Nižšie uvedený vzorec zachytí "bill", pretože je v poli vyhľadávania na prvom mieste, a vráti zodpovedajúcu hodnotu z B2.

=VLOOKUP("Bill", A2:B4, 2, FALSE)

Ďalej v tomto článku vám ukážem spôsob, ako urobiť VLOOKUP citlivý na veľkosť písmen. Preskúmame aj niekoľko ďalších funkcií, ktoré dokážu v programe Excel vykonať porovnávanie podľa veľkosti písmen.

    Vzorec VLOOKUP s rozlišovaním veľkých a malých písmen

    Ako bolo uvedené vyššie, bežný vzorec VLOOKUP nerozoznáva veľkosť písmen. Existuje však spôsob, ako v aplikácii Excel VLOOKUP rozlišovať veľkosť písmen, ako je uvedené v nasledujúcom príklade.

    Predpokladajme, že máte Identifikátory položky v stĺpci A a chcete vytiahnuť cenu položky a komentár zo stĺpcov B a C. Problém je v tom, že ID obsahujú malé aj veľké znaky. Napríklad hodnoty v A4 (001Tvci3u) a A5 (001Tvci3U) sa líšia len posledným znakom, "u", resp.

    Pri vyhľadávaní "001Tvci3 U ", štandardný vzorec VLOOKUP zobrazí sumu 90 USD, ktorá je spojená s "001Tvci3 u ", pretože sa nachádza pred "001Tvci3 U " vo vyhľadávacom poli. Ale to nie je to, čo chcete, však?

    =VLOOKUP(F2, A2:C7, 2, FALSE)

    Ak chcete v programe Excel vykonať vyhľadávanie s rozlišovaním veľkých a malých písmen, skombinujte funkcie VLOOKUP, CHOOSE a EXACT:

    VLOOKUP(TRUE, CHOOSE({1,2}, EXACT( lookup_value , lookup_array ), return_array ), 2, 0)

    Tento všeobecný vzorec dokonale funguje vo všetkých situáciách. sprava doľava , čo bežný vzorec VLOOKUP nedokáže. Pochvala Pouriya za návrh tohto jednoduchého a elegantného riešenia!

    V našom prípade sú skutočné vzorce nasledovné.

    Stiahnutie ceny v F3:

    =VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), B2:B7), 2, FALSE)

    Zobrazenie komentára F4:

    =VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7), 2, FALSE)

    Poznámka: Vo všetkých verziách Excelu okrem Excelu 365 funguje tento vzorec len ako pole, preto nezabudnite stlačiť klávesovú skratku Ctrl + Shift + Enter, aby ste ho správne dokončili. V Exceli 365 vďaka podpore dynamických polí funguje aj ako bežný vzorec.

    Ako tento vzorec funguje:

    Hlavnou časťou, ktorá robí tento trik, je vzorec CHOOSE s vnoreným EXACT:

    CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7)

    Tu funkcia EXACT porovnáva hodnotu v F2 s každou hodnotou v A2:A7 a vracia TRUE, ak sú presne rovnaké vrátane veľkosti písmen, inak FALSE:

    {FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE}

    Pre index_num argumentu funkcie CHOOSE, použijeme konštantu poľa {1,2}. Výsledkom je, že funkcia spojí logické hodnoty z vyššie uvedeného poľa a hodnoty z C2:C7 do dvojrozmerného poľa takto:

    {FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}

    Funkcia VLOOKUP ju odtiaľ prevezme a vyhľadá hľadanú hodnotu (ktorá je TRUE) v 1. stĺpci dvojrozmerného poľa (reprezentovaného logickými hodnotami) a vráti zhodu z 2. stĺpca, čo je hľadaná cena:

    VLOOKUP(TRUE, {FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}, 2, 0)

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

    Predplatitelia služby Microsoft 365 môžu v Exceli vykonávať vyhľadávanie podľa veľkosti písmen pomocou ešte jednoduchšieho vzorca. Ako iste tušíte, hovorím o výkonnejšom nástupcovi funkcie VLOOKUP - funkcii XLOOKUP.

    Keďže XLOOKUP pracuje s vyhľadávacím a návratovým poľom samostatne, nepotrebujeme trik s dvojrozmerným poľom z predchádzajúceho príkladu. Jednoducho použite EXACT pre lookup_array argument:

    XLOOKUP(TRUE, EXACT( lookup_value , lookup_array ), return_array , "Nenájdené")

    Posledný argument ("Nenájdený") je nepovinný. Definuje len, aká hodnota sa má vrátiť, ak sa nenájde žiadna zhoda. Ak ho vynecháte, potom sa v prípade, že vzorec nič nenájde, vráti štandardná chyba #N/A.

    Pre našu vzorovú tabuľku sú to vzorce XLOOKUP s rozlišovaním veľkých a malých písmen.

    Ak chcete získať cenu v F3:

    =XLOOKUP(TRUE, EXACT(F2, A2:A7), B2:B7, "Nenájdené")

    Výber komentára F4:

    =XLOOKUP(TRUE, EXACT(F2, A2:A7), C2:C7, "Nenájdené")

    Ako tento vzorec funguje:

    Podobne ako v predchádzajúcom príklade EXACT vráti pole hodnôt TRUE a FALSE, kde TRUE predstavuje zhody rozlišujúce veľkosť písmen. XLOOKUP vyhľadá vo vyššie uvedenom poli hodnotu TRUE a vráti zhodu z return_array Upozorňujeme, že ak sa v stĺpci vyhľadávania nachádzajú dve alebo viac presne rovnakých hodnôt (vrátane veľkosti písmen), vzorec vráti prvú nájdenú zhodu.

    Obmedzenie XLOOKUP : k dispozícii len v aplikáciách Excel 365 a Excel 2021.

    SUMPRODUCT - vyhľadávanie s rozlišovaním veľkých a malých písmen na vrátenie zodpovedajúcich čísel

    Ako ste pochopili z nadpisu, SUMPRODUCT je ďalšia funkcia programu Excel, ktorá dokáže vyhľadávať s ohľadom na veľkosť písmen, ale môže vrátiť číselné hodnoty Ak to nie je váš prípad, prejdite na príklad INDEX MATCH, ktorý poskytuje riešenie pre všetky typy údajov.

    Ako pravdepodobne viete, funkcia SUMPRODUCT programu Excel vynásobí zložky v zadaných poliach a vráti súčet súčinov. Keďže chceme, aby sa pri vyhľadávaní rozlišovali veľké a malé písmená, na získanie prvého poľa použijeme funkciu EXACT:

    =SUMPRODUKT((EXACT(A2:A7,F2) * (B2:B7))

    Funkcia SUMPRODUCT bohužiaľ nemôže vrátiť textové zhody, pretože textové hodnoty nemožno násobiť. V takom prípade sa zobrazí chyba #VALUE!, ako je to v bunke F4 na nasledujúcom obrázku:

    Ako tento vzorec funguje:

    Podobne ako v príklade VLOOKUP, funkcia EXACT porovnáva hodnotu v F2 so všetkými hodnotami v A2:A7 a v prípade zhody rozlišujúcej veľkosť písmen vracia TRUE, v opačnom prípade FALSE:

    SUMPRODUCT(({FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}*{155;186;90;54;159;28})

    Vo väčšine vzorcov Excel vyhodnocuje TRUE ako 1 a FALSE ako 0. Takže keď SUMPRODUCT vynásobí prvky dvoch polí na rovnakých pozíciách, všetky nezhody (FALSE) sa stanú nulami:

    SUMPRODUCT({0;0;0;54;0;0})

    Výsledkom je vzorec, ktorý vráti číslo zo stĺpca B, ktoré zodpovedá presnej zhode v stĺpci A s rozlišovaním veľkých a malých písmen.

    Obmedzenie SUMPRODUCT : môže vracať iba číselné hodnoty.

    INDEX MATCH - vyhľadávanie s rozlišovaním veľkých a malých písmen pre všetky typy údajov

    Konečne sme blízko k získaniu vyhľadávacieho vzorca bez obmedzení, ktorý rozlišuje veľké a malé písmená a funguje vo všetkých verziách programu Excel a na všetkých súboroch údajov.

    Tento príklad je posledný nielen preto, že to najlepšie si nechávame na koniec, ale aj preto, že vedomosti, ktoré ste získali v predchádzajúcich príkladoch, vám môžu pomôcť lepšie pochopiť vzorec MATCH INDEX, ktorý rozlišuje veľké a malé písmená.

    Kombinácia funkcií INDEX a MATCH sa v programe Excel často používa ako flexibilnejšia a všestrannejšia alternatíva k funkcii VLOOKUP. Nasledujúci článok dobre (dúfajme :) vysvetľuje, ako tieto dve funkcie fungujú spoločne - Použitie funkcie INDEX MATCH namiesto funkcie VLOOKUP.

    Tu vám len pripomeniem kľúčové body:

    • Funkcia MATCH vyhľadá hodnotu vyhľadávania v zadanom poli vyhľadávania a vráti jej relatívnu pozíciu.
    • Relatívna pozícia vyhľadávacej hodnoty prechádza priamo do číslo_riadku argument funkcie INDEX, ktorý jej prikazuje vrátiť hodnotu z tohto riadku.

    Na to, aby vzorec rozpoznal veľkosť písmen textu, stačí ku klasickej kombinácii INDEX MATCH pridať ešte jednu funkciu. Samozrejme, opäť potrebujete funkciu EXACT:

    INDEX( return_array , MATCH(TRUE, EXACT( lookup_value , lookup_array ), 0))

    Skutočný vzorec v F3 je:

    =INDEX(B2:B7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    V F4 používame tento:

    =INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    Nezabudnite, že vzorec funguje ako pole len vo všetkých verziách iných ako Excel 365, preto ho nezabudnite zadať stlačením klávesov Ctrl + Shift + Enter spolu. Ak sa to urobí správne, vzorec sa uzavrie do kučeravých zátvoriek, ako je znázornené na nasledujúcej snímke:

    Ako tento vzorec funguje:

    Rovnako ako vo všetkých predchádzajúcich príkladoch, EXACT vráti TRUE pre každú hodnotu v A2:A7, ktorá sa presne zhoduje s hodnotou v F2. lookup_value MATCH, vráti relatívnu pozíciu presnej zhody s rozlišovaním veľkých a malých písmen, čo je presne to, čo INDEX potrebuje na vrátenie zhody z B2:B7.

    Pokročilý vzorec na vyhľadávanie s rozlišovaním veľkých a malých písmen

    Vyššie uvedený vzorec INDEX MATCH vyzerá dokonale, však? Ale v skutočnosti nie je. Ukážem vám prečo.

    Predpokladajme, že bunka v návratovom stĺpci zodpovedajúca vyhľadávacej hodnote je prázdna. Čo vráti vzorec? Nič. A teraz sa pozrime, čo vlastne vráti:

    =INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    Ups, vzorec vracia nulu! Možno to nie je dôležité, ak pracujete len s textovými hodnotami. Ak však váš pracovný hárok obsahuje čísla a niektoré z nich sú skutočné nuly, je to problém.

    V skutočnosti sa všetky ostatné vyhľadávacie vzorce, o ktorých sme hovorili predtým, správajú rovnako. Ale teraz chcete bezchybný vzorec, však?

    Aby bol vzorec INDEX MATCH, ktorý rozlišuje veľké a malé písmená, úplne dokonalý, obalíte ho funkciou IF, ktorá kontroluje, či je návratová bunka prázdna, a v takom prípade nevráti nič:

    =IF(INDIRECT("C"&(1+MATCH(TRUE,EXACT(A2:A7, F2), 0)))", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "")

    Vo vyššie uvedenom vzorci:

    • "C" je návratový stĺpec.
    • "1" je číslo, ktoré zmení relatívna poloha bunky vrátenej funkciou MATCH do skutočná adresa bunky .

    Napríklad vyhľadávacie pole v našej funkcii MATCH je A2:A7, čo znamená, že relatívna pozícia bunky A2 je "1", pretože je to prvá bunka v poli. V skutočnosti však vyhľadávacie pole začína v riadku 2. Aby sme vyrovnali rozdiel, pridáme 1, takže funkcia INDIRECT vráti hodnotu zo správnej bunky.

    Nasledujúce snímky obrazovky ukazujú vylepšený vzorec INDEX MATCH, ktorý rozlišuje veľké a malé písmená, v akcii.

    Ak je návratová bunka prázdna, vzorec nevypíše nič (prázdny reťazec):

    Ak návratová bunka obsahuje nulu, vzorec vráti 0:

    Ak chcete radšej zobraziť nejakú správu, keď je návratová bunka prázdna, nahraďte prázdny reťazec ("") v poslednom argumente IF nejakým textom:

    =IF(INDIRECT("C"&(1+MATCH(TRUE, EXACT(A2:A7, F2), 0)))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "Nie je čo vrátiť, prepáčte.")

    Jednoduchý spôsob vykonania VLOOKUP s rozlišovaním veľkých a malých písmen

    Používatelia nášho balíka Ultimate Suite for Excel majú k dispozícii špeciálny nástroj, ktorý uľahčuje vyhľadávanie vo veľkých a zložitých tabuľkách a zbavuje ich stresu. Najlepšie je, že funkcia Merge Two Tables (Zlúčiť dve tabuľky) rozlišuje veľké a malé písmená a na nasledujúcom príklade je znázornená v akcii.

    Predpokladajme, že chcete vytiahnuť Qty. z Vyhľadávanie tabuľky do Hlavná stránka tabuľku na základe jedinečných ID položiek:

    Spustite sprievodcu Zlúčenie tabuliek a vykonajte tieto kroky:

    1. Vyberte hlavnú tabuľku, do ktorej sa majú načítať nové údaje.
    2. Vyberte vyhľadávaciu tabuľku, v ktorej sa majú hľadať nové údaje.
    3. Vyberte jeden alebo viac kľúčových stĺpcov (v našom prípade ID položky). A nezabudnite skontrolovať Porovnávanie s rozlišovaním veľkých a malých písmen box.

  • Sprievodca vás prevedie zostávajúcimi tromi krokmi, v ktorých určíte, ktoré stĺpce sa majú aktualizovať, ktoré stĺpce pridať, a v prípade potreby vyberiete ďalšie možnosti.
  • O chvíľu neskôr dostanete požadovaný výsledok :)

    Takto vyzerá vyhľadávanie v programe Excel so zohľadnením veľkosti písmen textu. Ď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 VLOOKUP s rozlišovaním veľkých a malých písmen (.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.