Formule Excel: la cellule de nombre de mots-clés contient -

Table des matières

Formule générique

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

Sommaire

Pour compter le nombre de mots ou de mots clés spécifiques qui apparaissent dans une cellule donnée, vous pouvez utiliser une formule basée sur les fonctions SEARCH, ISNUMBER et SUMPRODUCT. Dans l'exemple illustré, la formule en C5 est:

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

où «mots-clés» est la plage nommée E5: E9.

Explication

Remarque: si un mot-clé apparaît plus d'une fois dans une cellule donnée, il ne sera compté qu'une seule fois. En d'autres termes, la formule ne compte que les instances de mots clés différents.

Le cœur de cette formule est l'approche ISNUMBER + SEARCH pour rechercher du texte dans une cellule, qui est expliquée plus en détail ici. Dans ce cas, nous recherchons dans chaque cellule tous les mots de la plage nommée «mots-clés» (E5: E9). Nous faisons cela en passant la plage dans SEARCH comme argument find_text. Parce que nous passons dans un tableau de 5 éléments:

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

nous récupérons un tableau de 5 éléments en conséquence:

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

Les nombres correspondent à des correspondances et le #VALEUR! erreur signifie qu'aucune correspondance n'a été trouvée. Dans ce cas, comme nous ne nous soucions pas de l'endroit où le texte a été trouvé dans la cellule, nous utilisons ISNUMBER pour convertir le tableau en valeurs TRUE et FALSE:

(FALSE;FALSE;TRUE;FALSE;TRUE)

Et le double négatif (-) pour les changer en 1 et en zéros:

(0;0;1;0;1)

La fonction SOMMEPROD renvoie alors simplement la somme du tableau, 2 dans ce cas.

Gestion des mots clés vides

Si la plage de mots clés contient des cellules vides, la formule ne fonctionnera pas correctement, car la fonction SEARCH renvoie zéro lors de la recherche d'une chaîne vide (""). Pour filtrer les cellules vides de la plage de mots clés, vous pouvez utiliser la variante ci-dessous:

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

Remarque: cette version est une formule matricielle et doit être saisie avec Ctrl + Maj + Entrée.

Articles intéressants...