Si partie cellule contient mot parmi une liste

Résolu
Coco -  
 Coco -
Bonjour à tous les inconditionnels d'excel, cet outil magique,

J'ai une question existentielle sur laquelle je bloque depuis quelques heures, sans trouver de réponse satisfaisante sur Internet.

Je m'explique:
Sur une case B1, j'ai un long texte. Je souhaite savoir si ce texte contient l'un des mots figurant dans la liste de mot D1:D10.

Par exemple si B1 contient "Bonjour, je m'appelle Coco, je suis venu exposer mon problème sur excel"
et sur D1:D10 j'ai "déménager", "courroie", "traduire", "basket", "étriquer", "assommoir", "problème", "verbe", ...
Cela me sorte VRAI;

alors que si sur D1:D10 j'ai "déménager", "courroie", "traduire", "basket", "étriquer", "assommoir", "rasoir", "verbe", ...
Cela me sorte FAUX


Autre exigence: la formule serait placée en C1, pour pouvoir être copiée vers le bas pour vérifier aussi la condition sur B2, B3, ...


Comment faire?
Est-ce clair?
A voir également:

2 réponses

via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Bonjour

Une possibilité :
En E1 mettre la formule :
=NB.SI($B$1;"*"&D1&"*")
et l’étirer jusqu'en E10
Lorsque le mot existe la formule renvoie 1 (ou 2 si le mot est présent 2 fois), 0 autrement

Cdlmnt
Via
0
Coco
 
Merci pour votre prompte réponse.

En revanche, l'idée serait d'obtenir une formule unique pour B1, qui pourrait être recopiée vers le bas pour B2, B3... sans avoir à créer pour chaque case B une nouvelle colonne à droite de D.
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Bonjour
voyez ici si ça peut correspondre à ce que vous cherchez
https://mon-partage.fr/f/CNNYx8Vd/
crdlmnt
0
Coco
 
Merci Vaucluse, ça à l'air de pas mal marcher. Bon l'idéal serait que ce soit transposable sur plusieurs fichier, et destiné à être utilisé par des gens qui ne maîtriseraient pas forcément la création de fonction, du coup même si ça marche parfaitement, ce n'est toujours pas ma perle rare attendue :/

En tout cas merci beaucoup d'avoir pris le temps, et ça me sera surement utile dans des projets VBA futurs en tout cas :D
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Re,
amical salut Vaucluse ☺,

Ou bien avec une fonction personnalisée
https://mon-partage.fr/f/LdxrkXKY/

Cdlmnt
Via
0
Coco
 
Parfait via55, un grand merci!

=SOMMEPROD((NB.SI(A2;"*"&$F$2:$F$20&"*")))

Magnifique, c'est tout ce qu'il me fallait, je n'avais pas pensé à insérer un sommeprod pour prendre en compte l'ensemble de la plage!
J'exulte, merci :D
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Et pouvez vous dire quelle solution vous avez utilisée, au final?
à vous lire
0
Coco
 
Le sommeprod nb.si, couplé de deux equiv car les lignes de début et de fin de la plage dépendaient également d'un montant situé sur une autre colonne, c'est un peu barbare mais ça fonctionne parfaitement :)
0