Jak provést částečnou shodu řetězce v aplikaci Excel (8 snadných metod)

  • Sdílet Toto
Hugh West

Kdykoli v pracovním listu zpracováváte široký rozsah dat, je částečné porovnávání nebo fuzzy porovnávání účinným způsobem, jak rychle najít shodu. Pokud navíc chcete provést částečné porovnávání řetězce, je nejjednodušším řešením použití funkce Divoké karty . Kromě toho má Excel mnoho možností, jako např. VLOOKUP , XLOOKUP , INDEX s MATCH , kombinující IF s dalšími funkcemi k provedení tohoto úkolu. Dnes se naučíme, jak Provést částečnou shodu řetězce v aplikaci Excel.

Stáhnout cvičebnici

Stáhněte si tento cvičný list a procvičte si úkol při čtení tohoto článku.

Řetězec částečných shod.xlsx

8 metod pro provedení částečné shody řetězce v aplikaci Excel

Ve skutečnosti, řetězec částečné shody v Excelu lze provést mnoha způsoby pomocí jedné funkce nebo více funkcí současně. V tomto článku se naučíme 8 různých metod Níže si tyto metody ukážeme v podrobných krocích.

1. Použití příkazů IF & OR k provedení částečné shody řetězce

" IF " funkce nepodporuje zástupné znaky znaků. Nicméně kombinace IF s dalšími funkcemi lze použít k provedení částečné shody řetězce. Nyní se to naučíme.

V následujícím příkladu máme datovou tabulku, v níž jsou jména některých kandidátů uvedena v části "Jméno" Nyní musíme identifikovat názvy, které obsahují jeden z textových řetězců uvedených ve sloupcích 2 a 3 To znamená, že musíme zjistit jména, která obsahují písmeno "A" nebo "L" .

Kroky:

  • Za prvé, na "Stav" sloupec v buňce "E5" , použijte IF, NEBO vzorec.

Formát tohoto vzorce je v podstatě následující,

=IF(OR(ISNUMBER(SEARCH(text,buňka)),ISNUMBER(SEARCH(text,buňka)), "value_if_true", "value_if_false")

Nyní vložte hodnoty do vzorce. Konečný vzorec pro částečnou shodu je tedy následující:

=IF(OR(ISNUMBER(SEARCH(C5,B5)),ISNUMBER(SEARCH(D5,B5))), "YES", "NO")

Rozdělení vzorců

  • Zde je text C5 (A), D5 (L) Vzorec zajistí, aby C5 nebo D5 je řetězec částečné shody.
  • Pak je buňka B5 (Jonathan) .
  • Value_if_true je "ANO" .
  • Value_if_false je "NE" .
  • Pak stiskněte tlačítko VSTUPTE, a vzorec identifikuje řetězec částečné shody.

  • Nyní použijte tento vzorec na ostatní buňky, abyste získali konečný výsledek. Plnicí rukojeť na ikonu Automatické vyplňování odpovídající údaje v ostatních buňkách.

Nakonec získáte všechny částečné shody.

2. Použití funkcí IF, ISNUMBER a SEARCH pro částečnou shodu řetězce

Opět můžeme zjistit výsledky obsahující řetězce částečných shod pomocí kombinace IF, ISNUMBER a HLEDAT funkce v aplikaci Excel.

Zde uvažujme soubor dat obsahující sloupec "Jméno" , "Shodný řetězec" a "Stav" . Musíme identifikovat jména, která obsahují. řetězec částečné shody ze sloupce "Shodný řetězec" .

  • Nyní použijte vzorec s IF, ISNUMBER a HLEDAT funkce v "Stav" sloupec v buňce D5 .

Zde je formát následující,

=IF(ISNUMBER(SEARCH("text", buňka)), value_if_true, value_if_false)

  • Měli byste tedy vložit hodnoty. Konečný vzorec pro řetězec částečné shody je následující.
=IF(ISNUMBER(SEARCH(C5,B5)), "YES", "NOT FOUND")

  • Pak stiskněte tlačítko ENTER .

Nakonec je dosaženo našeho výsledku.

Rozdělení vzorců

  • Zde je text C5 (A) Vzorec zajistí, aby C5 je řetězec částečné shody nebo ne.
  • Pak je buňka B5 (Jonathan) .
  • Value_if_true je "ANO" .
  • Value_if_false je "NENALEZENO" .
  • Nakonec použijte tento vzorec pro všechny buňky ve sloupci, abyste zjistili všechny výsledky, které obsahují znaky řetězec částečné shody .

3. Použití funkce VLOOKUP k provedení částečné shody řetězce

V této části budeme nyní používat příkaz VLOOKUP provést funkci částečná shoda řetězce.

Nyní uvažujme tabulku, kde jsou uvedena jména některých kandidátů a jejich pořadí.

  • Nejprve zkopírujte hlavičky sloupců a vložte je někam do pracovních listů. A tam provedeme zadání.

  • Poté použijte VLOOKUP funkce v F5 buňka. Vzorec je
=VLOOKUP($E$5& "*",$B$5:$C$10,2,FALSE)

Rozdělení vzorců

  • Za prvé, Lookup_value je $E$5& "*" . Zde používáme Hvězdička (*) jako zástupný znak, který odpovídá zero nebo více text řetězce.
  • Za druhé, Table_array je $B$5:$C$10 .
  • Za třetí, Col_index_num je 2 .
  • Za čtvrté, [range_lookup] je FALSE protože chceme přesnou shodu .
  • Pak stiskněte tlačítko ENTER .

Výsledkem je, že vzorec provedl řetězec částečné shody .

  • Nyní použijte stejný vzorec 2 nebo vícekrát, abyste tuto funkci zvládli.

Nakonec získáte všechny částečné shody.

Přečtěte si více: Jak použít VLOOKUP pro částečnou shodu v aplikaci Excel (4 způsoby)

4. Začlenění funkce XLOOKUP pro provedení částečné shody

Na stránkách XLOOKUP s ISNUMBER může také dokončit řetězec částečné shody Nyní se podívejme na následující příklady.

V následujícím příkladu, dva jsou uvedeny tabulky. první tabulky,. řetězce částečných shod Nyní je třeba identifikovat jména ve skupině druhý tabulku, která obsahuje částečná shoda řetězce a poté vrátit hodnost přiřazenou těmto jménům.

  • Nyní v buňce F5 , použijte vzorec.

Formát tohoto vzorce je následující,

=XLOOKUP(lookup_value,ISNUMBER(SEARCH(text,cell)),return_array)

  • Proto byste měli do vzorce vložit hodnoty.
=XLOOKUP(TRUE,ISNUMBER(SEARCH($B$5:$B$10,E5)),$C$5:$C$10)

  • Pak stiskněte tlačítko ENTER .

Nakonec vzorec úspěšně vrátí hodnost názvu, který obsahuje hodnotu částečná shoda řetězce.

Rozdělení vzorců

  • Za prvé, lookup_value je "TRUE" .
  • Za druhé, text je $B$5:$B$10 .
  • Za třetí, buňka je E5 ( Henry Jonathan) . A vzorec vrátí hodnost pro Henry Jonathan.
  • Za čtvrté, return_array je $C$5:$C$10 .
  • Poté proveďte stejný postup pro všechny buňky.

Díky tomu uvidíte všechny zápasy.

5. Použití funkce INDEX s funkcí MATCH k provedení částečné shody řetězce

Zde můžeme vrátit text, který obsahuje hodnotu řetězec částečné shody, pomocí INDEX s MATCH v aplikaci Excel.

Nyní se podívejte na následující příklad, kde dva jsou uvedeny tabulky. první tabulky,. "Jméno" a "Hodnost" některých kandidátů. druhý stůl, a řetězec částečné shody V tuto chvíli je třeba identifikovat jména ze seznamu první tabulku, která obsahuje částečná shoda řetězce.

  • Nyní ve sloupci F5 , použijte INDEX s MATCH vzorec. Vzorec je následující,
=INDEX($B$5:$B$10,MATCH(E5& "*",$B$5:$B$10,0))

  • Pak stiskněte tlačítko ENTER .

Výsledkem je název "Robben" který obsahuje řetězec částečné shody (Rob).

Rozdělení vzorců

  • Za prvé, pole je $B$5:$B$10 .
  • Za druhé, lookup_value je E5& "*" . Zde používáme Hvězdička (*) jako zástupné znaky která odpovídá zero nebo více textových řetězců.
  • Za třetí, lookup_array je $B$5:$B$10 .
  • Za čtvrté, [match_type] je EXACT (0).

Kromě toho Hvězdička(*) lze použít na obou stranách buňky, pokud máte na obou stranách znaky. řetězec částečné shody . Vezměme si, že máme částečná shoda řetězce "ni" . Má zástupné znaky znaky na obou stranách nyní použijeme tento hvězdička(*) na obou stranách buňky.

  • Pro lepší pochopení použijte následující vzorec v položce F6 buňka.
=INDEX($B$5:$B$10,MATCH("*"&E6&"*",$B$5:$B$10,0))

  • Pak stiskněte tlačítko ENTER a získáte výsledek.

6. Kombinované funkce pro provedení částečné shody řetězce se dvěma sloupci

Můžete využít kombinace funkcí, jako je IF funkce, Funkce AND , ISNUMBER a HLEDAT zjistit funkci řetězec částečné shody v Excelu. Navíc můžete tyto funkce upravit pro různé typy výsledků podle svých preferencí. Nyní postupujte podle níže uvedeného příkladu. kde máme dva Na základě obou kritérií tedy musíme extrahovat řetězec částečných shod.

Kroky:

  • Nejprve je třeba vybrat novou buňku C5 kde chcete zachovat stav.
  • Zadruhé byste měli použít vzorec uvedený níže. C5 buňka.
=IF(AND(ISNUMBER(SEARCH($E$6, B5)), ISNUMBER(SEARCH($F$6, B5)), "Found", "")

  • Nakonec stiskněte ENTER a získáte výsledek.

Rozdělení vzorců

  • Zde, SEARCH($F$6, B5) vyhledá, zda existují nějaké řetězce Ad v B5 buňka.
    • Výstup: #VALUE!.
  • Poté se ISNUMBER funkce zkontroluje, zda je výše uvedený výstup číslo, nebo ne.
    • Výstup: FALSE.
  • Podobně, ISNUMBER(SEARCH($E$6, B5)) provede stejnou operaci. HLEDAT funkce najde 9 v B5 buňka.
    • Výstup: FALSE.
  • Poté se A funkce zkontroluje, zda jsou obě logiky PRAVDA.
    • Výstup: FALSE.
  • A konečně. IF funkce vrátí " Nalezeno" pokud se obě předchozí logiky stanou PRAVDA. V opačném případě vrátí prázdná buňka.
    • Výstup: Zde je výstupem prázdný/prázdný protože neexistuje shoda pro řetězcovou hodnotu parametru B5 buňka.
  • Nyní přetáhněte Plnicí rukojeť na ikonu Automatické vyplňování odpovídající údaje v ostatních buňkách.

Nakonec najdete řetězec, který je částečně shodný.

7. Použití vzorce pole k nalezení částečné shody řetězce se dvěma sloupci

Vzorec pole můžete použít pomocí příkazu kombinace některých funkcí, jako je např. IF funkce, Funkce COUNT , a HLEDAT zjistit funkci řetězec částečné shody v Excelu. Navíc můžete tyto funkce upravit pro různé typy výsledků podle svých preferencí. Nyní postupujte podle níže uvedeného příkladu. Ve skutečnosti máme dva Na základě obou kritérií musíme vyčlenit kritéria. částečné shody řetězce .

Kroky:

  • Nejprve je třeba vybrat novou buňku. C5 kde chcete zachovat stav.
  • Zadruhé byste měli použít vzorec uvedený níže. C5 buňka.
=IF(COUNT(SEARCH({"A", "12"}, B5))=2, "Found", "")

  • Nakonec stiskněte ENTER a získáte výsledek.

Rozdělení vzorců

  • Zde, SEARCH({"A", "12″}, B5) vyhledá, zda existují nějaké řetězce A a počet 12 v B5 buňka.
    • Výstup: {#VALUE!,7}.
  • Poté se COUNT funkce spočítá platné buňky z výše uvedeného výstupu.
    • Výstup: 1.
  • A konečně. IF funkce vrátí " Nalezeno" pokud oba COUNT funkce vrací 2. V opačném případě vrátí prázdná buňka.
    • Výstup: Zde je výstupem prázdný/prázdný protože neexistuje shoda pro řetězcovou hodnotu parametru B5 buňka.
  • V důsledku toho přetáhněte Plnicí rukojeť na ikonu Automatické vyplňování odpovídající údaje v ostatních buňkách.

Nakonec najdete řetězec, který je částečně shodný.

Jak získat pozici řetězce částečné shody v aplikaci Excel

Zde je nejzajímavější, že můžete použít pouze MATCH zjistit funkci řetězec částečné shody Nyní postupujte podle níže uvedeného příkladu. V podstatě máme kritéria. Takže na základě tohoto kritéria musíme extrahovat částečné shody řetězce z "Jméno s hodností" sloupec.

Kroky:

  • Nejprve je třeba vybrat novou buňku D9 kde chcete uchovat výsledek.
  • Zadruhé byste měli použít vzorec uvedený níže. D9 buňka.
=MATCH("*"&D6& "*", B5:B10, 0)

  • Nakonec stiskněte ENTER a získáte výsledek.

Rozdělení vzorců

  • Za prvé, lookup_value je "*"&D6& "*" . Zde používáme Hvězdička (*) jako zástupné znaky která odpovídá zero nebo více textových řetězců.
  • Za druhé, lookup_array je B5:B10 .
  • Za třetí, [match_type] je EXACT (0).

Přečtěte si více: Jak použít INDEX a Match pro částečnou shodu (2 způsoby)

Na co nezapomenout

✅ Zde se XLOOKUP je k dispozici pouze v Verze Microsoft 365 . Takže pouze uživatelé Excel 365 může tuto funkci používat.

✅Takže VLOOKUP funkce vždy hledá hodnoty z vyhledávače úplně vlevo horního sloupce doprava. Kromě toho tato funkce "Nikdy" vyhledává údaje v vlevo .

✅Nakonec, Hvězdička(*) se používá jako zástupné znaky . Používejte ji tedy na obou stranách. řetězec částečné shody pokud potřebujete zástupné znaky na obou stranách.

Praktická část

Nyní si můžete vysvětlenou metodu sami vyzkoušet.

Závěr

V tomto článku se zabýváme tím, jak provést řetězec částečné shody v aplikaci Excel pomocí osm různé metody. Doufám tedy, že vám tento článek bude užitečný, když se budete potýkat s problémy. Také se můžete podělit o své myšlenky, pokud máte nějaké nejasnosti.

Hugh West je velmi zkušený školitel a analytik Excelu s více než 10 lety zkušeností v oboru. Má bakalářský titul v oboru Účetnictví a finance a magisterský titul v oboru Business Administration. Hugh má vášeň pro výuku a vyvinul jedinečný přístup k výuce, který lze snadno sledovat a pochopit. Jeho odborné znalosti Excelu pomohly tisícům studentů a profesionálů po celém světě zlepšit své dovednosti a vyniknout ve své kariéře. Prostřednictvím svého blogu Hugh sdílí své znalosti se světem a nabízí bezplatné výukové programy Excelu a online školení, které jednotlivcům a firmám pomohou dosáhnout jejich plného potenciálu.