Obsah
V programe Excel si okolnosti môžu vyžadovať kontrolu, či bunka obsahuje konkrétny text alebo nie. Dnes si ukážeme, ako skontrolovať, či bunka obsahuje konkrétny text. Na tomto sedení používame Excel 2019, pokojne použite svoju preferovanú verziu.
Najskôr sa zoznámime so súborom údajov, ktorý je základom našich príkladov
.
Máme tabuľku, ktorá obsahuje informácie o niekoľkých študentoch s ich známkami. Pomocou tohto súboru údajov skontrolujeme, či bunka obsahuje konkrétny text alebo nie.
Všimnite si, že ide o základný súbor údajov, aby sa veci zjednodušili. V reálnom scenári sa môžete stretnúť s oveľa väčším a zložitejším súborom údajov.
Cvičebnica pre prax
Cvičebnicu si môžete stiahnuť z nižšie uvedeného odkazu.
Excel Ak bunka obsahuje určitý text.xlsxAk bunka obsahuje špecifický text
1. Bunka obsahuje iba špecifický text
Môžeme si prezrieť bunku, ktorá môže (ale nemusí) obsahovať presne len text (reťazec), ktorý hľadáme. Nebudú k nemu pripojené žiadne ďalšie reťazce.
Napríklad v našom súbore údajov Trieda stĺpec má Prešiel alebo Neúspešné V každej bunke nie sú žiadne slová alebo reťazce navyše. Môžeme teda skontrolovať, či bunka v tomto stĺpci obsahuje Prešiel alebo Neúspešné .
Tu napríklad skontrolujeme, či bunka obsahuje "prešiel" alebo nie, a potom pridáme poznámku na novozavedené Poznámky stĺpec.
Keď počujete slová ako "check", jednou z prvých funkcií, ktoré vás napadnú, je IF . IF funkcia vykoná logický test a vráti binárnu hodnotu (TRUE alebo FALSE).
Napíšeme vzorec pomocou IF skontrolovať, či bunka obsahuje konkrétny text "Passed" alebo nie.
=IF(D4="Passed","Promoted","")
Tu sme nastavili logickú operáciu D4="Vyhovel"
ktorá porovnáva, či D4 obsahuje "Passed" alebo nie.
Pre if_true_value sme nastavili "Promoted", zobrazí sa ako výsledok, akonáhle nájde bunku obsahujúcu text. Zatiaľ nie je if_false_value je k dispozícii.
Stránka D4 bunka má hľadaný text "Passed", takže vzorec vrátil if_true_value .
Teraz napíšte vzorec pre ostatné bunky. AuoFill aj funkciu.
Vidíte, že náš vzorec vrátil if_true_value , "Promoted", dokonale pre bunky, ktoré obsahujú "Passed".
Ak niektorá z buniek obsahuje "odovzdané" namiesto "Odovzdané", bude to tiež fungovať.
Prečítajte si viac: Vyhľadávanie textu v programe Excel v rozsahu
2. Bunka obsahuje konkrétny text (čiastočná zhoda)
Niekedy môžeme potrebovať vyhľadať konkrétny text v bunke ako podreťazec. V tejto časti si ukážeme, ako to urobiť.
Napríklad budeme hľadať reťazec (názov skupiny) v bunkách ID stĺpec.
Tu sme zaviedli niekoľko stĺpcov, ktoré zodpovedajú kontextu nášho príkladu.
Môžete si pozrieť Vyhľadávací reťazec stĺpec sme zlúčili riadky. Postupujte podľa tohto článku o zlučovaní riadkov.
I. Zhoda prostredníctvom funkcie FIND (citlivá na veľkosť písmen)
V predchádzajúcej časti sme použili IF na kontrolu textu (pomocou logického výrazu). Táto funkcia sa bude používať, hoci potrebujeme ďalšie podporné funkcie.
Stránka NÁJSŤ je funkcia, ktorú budeme párovať s funkciou IF na kontrolu, či bunka obsahuje konkrétny text aspoň ako podreťazec.
Vybrali sme napríklad reťazec "AB", ktorý budeme vyhľadávať v bunkách z ID stĺpec.
Teraz napíšeme vzorec pre B4 bunky.
=IF(ISNUMBER(FIND($E$4,B4)), "Nájdené", "Nenájdené")
Tu môžete vidieť funkciu ISNUMBER . ISNUMBER vráti TRUE keď bunka obsahuje číslo, a FALSE ak nie
Túto funkciu sme použili, pretože kontroluje, či NÁJSŤ Výsledkom funkcie je číslo alebo nie. Vracia logickú hodnotu.
Keď sa ISNUMBER vráti TRUE potom IF spustí funkciu if_true_value (Found) , v opačnom prípade if_false_value (Nenašlo sa) .
Tu sa pre prvú bunku ISNUMBER-FIND vrátil TRUE a konečným výstupom sa stalo "Found".
Vyberieme názov skupiny. Na tento účel použijeme príkaz MID Táto funkcia extrahuje znaky zo stredu daného reťazca.
=IF(ISNUMBER(FIND($E$4,B4)),MID(B4,FIND($E$4,B4),2),"")
Najprv sme skontrolovali, či bunka obsahuje konkrétny text, potom sme v if_true_value sme nastavili pole MID na získanie hodnoty. NÁJSŤ v rámci MID poskytne počiatočný bod a potom 2 znaky. Tým sa načítajú dvojznakové názvy skupín.
Názov skupiny sme našli, keď bunka obsahuje text.
Keďže NÁJSŤ je citlivý na veľkosť písmen, nevykoná sa if_true_value pre "ab".
Napíšte kód pre ostatné bunky. Nájdete názov skupiny, ktorý bol napísaný presne tak, ako Vyhľadávací reťazec .
Zmeniť Vyhľadávací reťazec nájdete aktualizovaný výsledok.
II. Zhoda prostredníctvom funkcie SEARCH (nerozlišuje veľké a malé písmená)
V predchádzajúcej časti sme si všimli prístup, ktorý rozlišuje veľké a malé písmená. Aby sme zachovali flexibilitu, môžeme prijať prístup, ktorý nerozlišuje veľké a malé písmená. HĽADAŤ bude užitočná funkcia.
HĽADAŤ vracia umiestnenie jedného textového reťazca v druhom. Funguje podobne ako NÁJSŤ ale nerozlišuje veľké a malé písmená.
Vzorec je nasledovný
=IF(ISNUMBER(SEARCH($E$4,B4)),MID(B4,SEARCH($E$4,B4),2),"")
Zdá sa, že podobne ako NÁJSŤ Jediná zmena je, že sme nahradili NÁJSŤ s HĽADAŤ Zvyšok vzorca je rovnaký a funguje úplne rovnako.
Názov skupiny sme našli, keď bunka obsahuje text.
Napíšte vzorec pre ostatné bunky. Nájdete všetky názvy skupín, ktoré majú "AB" v akomkoľvek tvare.
Ak napíšeme "ab" ako Vyhľadávací reťazec napriek tomu sa tieto hodnoty načítajú.
III. Zhoda pomocou funkcie COUNTIF (nerozlišuje veľké a malé písmená)
Ďalším spôsobom kontroly bunky obsahujúcej konkrétny text ako podreťazec je kombinácia IF a COUNTIF Tento prístup tiež nerozlišuje veľké a malé písmená.
Táto stránka COUNTIF funkcia počíta bunky v rozsahu, ktoré spĺňajú jednu podmienku.
Teraz bude vzorec nasledovný.
=IF(COUNTIF(B4, "*"&$E$4& "*"),MID(B4,SEARCH($E$4,B4),2),"")
Tu sme skontrolovali logiku pomocou COUNTIF ... COUNTIF kontroluje, či je hodnota count 1 alebo nie.
Ak COUNTIF vráti 1, potom if_true_value ( MID časť na extrakciu názvu skupiny). MID časť je opísaná v predchádzajúcej časti.
Pre 0 z COUNTIF časť, vzorec vráti if_false_value (zatiaľ prázdnu bunku).
Našli sme zhodu a vzorec vrátil názov skupiny, keď bunka obsahuje konkrétny text.
Napíšte vzorec pre ostatné bunky. Nájdete všetky názvy skupín, ktoré majú Vyhľadávací reťazec v akejkoľvek forme.
Zmeňme Vyhľadávací reťazec hodnotu, budeme mať pred sebou aktualizované výsledky.
Pre viac COUNTIF prístupy čiastočnej zhody nájdete v tomto článku COUNTIF PARTIAL MATCH. Ak vás zaujíma čiastočná zhoda s if, môže vám pomôcť tento článok IF Partial Match.
Záver
To je pre dnešok všetko. Uviedli sme niekoľko prístupov, ako skontrolovať, či bunka obsahuje konkrétny text v programe Excel. Dúfam, že vám to bude užitočné. Ak sa vám zdá niečo zložité na pochopenie, môžete to komentovať. Dajte nám vedieť o ďalších metódach, ktoré sme tu možno vynechali.