RodMalvo_Ex
XLDnaute Nouveau
Bonjour à tous,
Je suis dans une impasse depuis quelques heures, je souhaiterais utiliser une formule me renvoyant un mot trouvé dans la cellule contenant une phrase.
J'ai des cellules contenant du texte (une phrase) et systématiquement un nom prénom à la fin ou au milieu du texte. Dans une autre feuille j'ai 2 colonnes (une nom et une autre prénom).
Je souhaiterais qu'avec la liste des noms je puisse contrôler pour chaque cellule si un des noms de la liste est dans la cellule avec le texte et si oui que le nom soit extrait et soit le résultat de ma formule.
J'ai déjà essayé avec des imbrications de SI, SIERREUR et CHERCHE mais ayant une trentaine de noms la formule serait extrêmement longue.
Voici ma formule pour seulement 2 noms :
SI(SIERREUR(CHERCHE("CHRISTEL";$F4);-1)>0;STXT(F4;CHERCHE("CHRISTEL";$F4);8);SI(SIERREUR(CHERCHE("PRISCILLE";$F4);-1)>0;STXT(F4;CHERCHE("PRISCILLE";$F4);9);""))
J'ai aussi essayé SOMMEPROD qui me renvoi si un ou plusieurs noms sont trouvés dans la chaîne de caractère mais ne me renvoi pas les noms trouvés :
=SOMMEPROD((NB.SI(E32;"*"&$E$4:$E$28&"*"))*1)
Si vous avez une solution (hors VBA) pour ne pas avoir a faire une formule de 50 lignes je suis preneur !
Merci d'avance
Je suis dans une impasse depuis quelques heures, je souhaiterais utiliser une formule me renvoyant un mot trouvé dans la cellule contenant une phrase.
J'ai des cellules contenant du texte (une phrase) et systématiquement un nom prénom à la fin ou au milieu du texte. Dans une autre feuille j'ai 2 colonnes (une nom et une autre prénom).
Je souhaiterais qu'avec la liste des noms je puisse contrôler pour chaque cellule si un des noms de la liste est dans la cellule avec le texte et si oui que le nom soit extrait et soit le résultat de ma formule.
J'ai déjà essayé avec des imbrications de SI, SIERREUR et CHERCHE mais ayant une trentaine de noms la formule serait extrêmement longue.
Voici ma formule pour seulement 2 noms :
SI(SIERREUR(CHERCHE("CHRISTEL";$F4);-1)>0;STXT(F4;CHERCHE("CHRISTEL";$F4);8);SI(SIERREUR(CHERCHE("PRISCILLE";$F4);-1)>0;STXT(F4;CHERCHE("PRISCILLE";$F4);9);""))
J'ai aussi essayé SOMMEPROD qui me renvoi si un ou plusieurs noms sont trouvés dans la chaîne de caractère mais ne me renvoi pas les noms trouvés :
=SOMMEPROD((NB.SI(E32;"*"&$E$4:$E$28&"*"))*1)
Si vous avez une solution (hors VBA) pour ne pas avoir a faire une formule de 50 lignes je suis preneur !
Merci d'avance