Vzorec programu Excel: Spočítajte bunky, ktoré obsahujú konkrétny text -

Obsah

Všeobecný vzorec

=COUNTIF(range,"*txt*")

Zhrnutie

Ak chcete počítať bunky, ktoré obsahujú určitý text, môžete použiť funkciu COUNTIF so zástupným znakom. V zobrazenom príklade je vzorec v E5:

=COUNTIF(B5:B15,"*a*")

Vysvetlenie

Funkcia COUNTIF počíta bunky v rozsahu, ktorý spĺňa kritériá. Napríklad na spočítanie počtu buniek v rozsahu, ktorý obsahuje písmeno „a“, môžete použiť:

=COUNTIF(range,"a") // exact match

Upozorňujeme však, že ide o presnú zhodu. Aby sa bunka mohla spočítať, musí obsahovať presne „a“. Ak bunka obsahuje ďalšie znaky, nebude sa to počítať.

Pri zobrazenom probléme chceme spočítať bunky, ktoré obsahujú konkrétny text, čo znamená, že text môže byť kdekoľvek v bunke. Aby sme to dosiahli, musíme ako zástupný znak použiť hviezdičku (*). Napríklad na spočítanie buniek, ktoré obsahujú písmeno „a“, kdekoľvek použijeme:

=COUNTIF(range,"*a*")

Hviezdička vo vzorci znamená „zhoduje sa s ľubovoľným počtom znakov vrátane nuly“, takže tento vzor bude počítať každú bunku, ktorá obsahuje „a“ na ľubovoľnej pozícii, s alebo bez ďalších znakov vľavo alebo vpravo. Všetky vzorce použité v príklade majú rovnaký vzorec:

=COUNTIF(B5:B15,"*a*") // contains "a" =COUNTIF(B5:B15,"*2*") // contains "2" =COUNTIF(B5:B15,"*-S*") // contains "-s" =COUNTIF(B5:B15,"*x*") // contains "x"

Poznámka: Funkcia COUNTIF nerozlišuje veľké a malé písmená.

S odkazom na bunku

Tento vzorec môžete ľahko upraviť tak, aby sa pre kritériá použil obsah inej bunky. Napríklad ak A1 obsahuje text, ktorý chcete nájsť, môžete použiť:

=COUNTIF(range,"*"&A1&"*")

Spočítajte konkrétne čísla

Vyššie uvedený vzorec COUNTIF nebude fungovať, ak hľadáte konkrétne číslo a bunky obsahujú číselné údaje. Je to preto, že zástupný znak automaticky spôsobí, že funkcia COUNTIF vyhľadáva iba text (tj. Vyhľadáva „2“ namiesto iba 2). Pretože textová hodnota nebude nikdy nájdená v skutočnom počte, funkcia COUNTIF vráti nulu.

Ak chcete v číselnom obsahu spočítať konkrétne číslo, môžete použiť iný vzorec založený na funkcii VYHĽADÁVANIE a ISNUMBER, ako je tento:

=SUMPRODUCT(--(ISNUMBER(SEARCH(text,range))))

V tomto vzorci Text je text, ktorý hľadáte, a rozsah je oblasť buniek, ktoré chcete spočítať. Keď SEARCH nájde zhodu, vráti číslo a funkcia ISNUMBER prevedie číslo na hodnotu TRUE alebo FALSE. Pretože kontrolujeme viac ako jednu bunku, výsledkom bude pole alebo TRUE a FALSE hodnoty. Dvojitý zápor sa používa na prevod hodnôt TRUE a FALSE na 1 s a 0 s a funkcia SUMPRODUCT vráti súčet poľa ako konečný výsledok.

SEARCH automaticky zaobchádza so všetkými číslami ako s textom, takže nájde napríklad 1 v čísle 201. Na označenie polohy tiež nie je potrebné používať zástupné znaky, pretože SEARCH automaticky prehľadá celý text v bunke.

Verzia rozlišujúca veľké a malé písmená

Pre počet malých a veľkých písmen môžete použiť vzorec založený na funkcii FIND:

=SUMPRODUCT(--(ISNUMBER(FIND(text,range))))

Tu sa namiesto funkcie SEARCH používa funkcia FIND, pretože funkcia FIND rozlišuje veľké a malé písmená. V iných ohľadoch vzorec funguje ako vzorec ISNUMBER + FIND opísaný vyššie.

Zaujímavé články...