web-dev-qa-db-fra.com

Excel: recherche de plusieurs termes dans une cellule

J'utilise cette équation pratique pour rechercher un terme à l'intérieur d'une cellule dans Excel.

=IF(ISNUMBER(SEARCH("*Gingrich*",C1)),"1","")

Cette équation recherche la présence de Gingrich en C1, si elle existe, elle affiche un 1.

Tout ce que j'aimerais faire, c'est rechercher plus d'un terme à la fois. Tout le monde sait comment ajouter une fonction OR dans cela pour que je puisse rechercher Gingrich OR Obama OR Romney etc.) .?

14
Chris J. Vargo

Autrement

=IF(SUMPRODUCT(--(NOT(ISERR(SEARCH({"Gingrich","Obama","Romney"},C1)))))>0,"1","")

De plus, si vous conservez une liste de valeurs, par exemple A1 à A3, vous pouvez utiliser

=IF(SUMPRODUCT(--(NOT(ISERR(SEARCH($A$1:$A$3,C1)))))>0,"1","")

Les caractères génériques ne sont pas du tout nécessaires dans la fonction Search (), car Search () renvoie la position de la chaîne trouvée.

29
teylyn

Essayez d'utiliser la fonction COUNT comme celle-ci

=IF(COUNT(SEARCH({"Romney","Obama","Gingrich"},C1)),1,"")

Notez que vous n'avez pas besoin des caractères génériques (comme le dit teylyn) et à moins qu'il n'y ait une raison spécifique, "1" n'a pas besoin de guillemets (en fait, cela en fait une valeur de texte)

9
barry houdini

Cela le fera pour vous:

=IF(OR(ISNUMBER(SEARCH("Gingrich",C3)),ISNUMBER(SEARCH("Obama",C3))),"1","")

Compte tenu de cette fonction dans la colonne à droite des noms (qui se trouvent dans la colonne C), le résultat est:

Romney  
Gingrich    1
Obama       1
3
Simon