Excel-formel: Antal nyckelord innehåller -

Innehållsförteckning

Generisk formel

=SUMPRODUCT(--ISNUMBER(SEARCH(keywords,A1)))

Sammanfattning

För att räkna antalet specifika ord eller nyckelord som visas i en viss cell kan du använda en formel baserad på funktionerna SÖK, ISNUMBER och SUMPRODUKT. I exemplet som visas är formeln i C5:

=SUMPRODUCT(--ISNUMBER(SEARCH(keywords,B5)))

där "nyckelord" är det namngivna intervallet E5: E9.

Förklaring

Obs: om ett nyckelord visas mer än en gång i en viss cell räknas det bara en gång. Med andra ord räknas formeln endast förekomster av olika nyckelord.

Kärnan i denna formel är ISNUMBER + SEARCH-metoden för att hitta text i en cell, vilket förklaras mer detaljerat här. I det här fallet letar vi i varje cell efter alla ord i det angivna intervallet "nyckelord" (E5: E9). Vi gör detta genom att överföra intervallet till SÖK som argumentet find_text. Eftersom vi passerar i en uppsättning av 5 artiklar:

("green";"orange";"white";"blue";"pink")

vi får en rad med 5 artiklar tillbaka som ett resultat:

(#VALUE!;#VALUE!;1;#VALUE!;14)

Siffrorna motsvarar matchningar och #VÄRDE! fel betyder att ingen matchning hittades. I det här fallet, eftersom vi inte bryr oss om var texten hittades i cellen, använder vi ISNUMBER för att konvertera matrisen till SANT och FALSKA värden:

(FALSE;FALSE;TRUE;FALSE;TRUE)

Och det dubbla negativa (-) för att ändra dessa till 1 och nollor:

(0;0;1;0;1)

Funktionen SUMPRODUCT returnerar sedan helt enkelt summan av matrisen, 2 i detta fall.

Hantering av tomma sökord

Om nyckelordintervallet innehåller tomma celler fungerar inte formeln korrekt, eftersom funktionen SÖK returnerar noll när du letar efter en tom sträng (""). För att filtrera eventuella tomma celler i nyckelordsområdet kan du använda varianten nedan:

(=SUMPRODUCT(--ISNUMBER(SEARCH(IF(keywords"",keywords),B5))))

Obs: den här versionen är en matrisformel och måste anges med kontroll + skift + enter.

Intressanta artiklar...