
Všeobecný vzorec
=SUMPRODUCT(--ISNUMBER(SEARCH(keywords,A1)))
Zhrnutie
Ak chcete spočítať počet konkrétnych slov alebo kľúčových slov, ktoré sa zobrazia v danej bunke, môžete použiť vzorec založený na funkciách VYHĽADÁVANIE, ISNUMBER a SUMPRODUCT. V zobrazenom príklade je vzorec v C5:
=SUMPRODUCT(--ISNUMBER(SEARCH(keywords,B5)))
kde „kľúčové slová“ je pomenovaný rozsah E5: E9.
Vysvetlenie
Poznámka: Ak sa kľúčové slovo v danej bunke objaví viackrát, bude sa počítať iba raz. Inými slovami, vzorec počíta iba inštancie rôznych kľúčových slov.
Jadrom tohto vzorca je prístup ISNUMBER + SEARCH k hľadaniu textu v bunke, ktorý je tu podrobnejšie vysvetlený. V takom prípade hľadáme v každej bunke všetky slová v pomenovanom rozsahu „kľúčové slová“ (E5: E9). Urobíme to tak, že rozsah zadáme do SEARCH ako argument find_text. Pretože odovzdávame pole s 5 položkami:
("green";"orange";"white";"blue";"pink")
vo výsledku dostaneme pole 5 položiek:
(#VALUE!;#VALUE!;1;#VALUE!;14)
Čísla zodpovedajú zhodám a #HODNOTA! chyba znamená, že sa nenašla žiadna zhoda. V tomto prípade, pretože nás nezaujíma, kde sa text v bunke našiel, použijeme ISNUMBER na prevedenie poľa na hodnoty TRUE a FALSE:
(FALSE;FALSE;TRUE;FALSE;TRUE)
A dvojitý zápor (-), ktorý ich zmení na 1s a nuly:
(0;0;1;0;1)
Funkcia SUMPRODUCT potom jednoducho vráti súčet poľa, v tomto prípade 2.
Zaobchádzanie s prázdnymi kľúčovými slovami
Ak rozsah kľúčových slov obsahuje prázdne bunky, vzorec nebude fungovať správne, pretože funkcia SEARCH vráti nulu pri hľadaní prázdneho reťazca (""). Ak chcete filtrovať prázdne bunky v rozsahu kľúčových slov, môžete použiť nasledujúcu variáciu:
(=SUMPRODUCT(--ISNUMBER(SEARCH(IF(keywords"",keywords),B5))))
Poznámka: táto verzia predstavuje vzorec poľa a musí byť zadaná pomocou klávesov Control + Shift + Enter.