Vérifier si une cellule contient un mot d'une liste

Tibolastico - 19 févr. 2024 à 12:07
bigoudiii Messages postés 233 Date d'inscription lundi 19 décembre 2022 Statut Membre Dernière intervention 28 août 2024 - 19 févr. 2024 à 16:28

Bonjour,

J'ai deux listes, une avec des emails, et une autre avec les extensions de mails de tous mes clients.

J'aimerai comparer avec une formule pour chaque cellule si elle a une extension similaire à une des extensions de ma 2e liste. Petite précision, j'ai des centaines de mails et extensions donc je ne peux pas faire de boucle SI avec chaque cellule.

Est ce que vous avez une idée de comment faire ?
Windows / Chrome 121.0.0.0

A voir également:

1 réponse

bigoudiii Messages postés 233 Date d'inscription lundi 19 décembre 2022 Statut Membre Dernière intervention 28 août 2024 78
19 févr. 2024 à 13:34

Hello,

Il peut y avoir différentes manières, tout dépend de ton fichier.

Fournis un exemple anonymisé en le postant sur cjoint.com et en donnant ici le lien créé. Donne aussi ta version Excel

0

https://www.cjoint.com/c/NBtm1hYLMGF

J'ai refais la même mise en forme que mon fichier de base. Je suis sur cette version d'excel : 

Microsoft® Excel® pour Microsoft 365 MSO (Version 2401 Build 16.0.17231.20236) 64 bits

Merci beaucoup !

0
bigoudiii Messages postés 233 Date d'inscription lundi 19 décembre 2022 Statut Membre Dernière intervention 28 août 2024 78 > Tibolastico
19 févr. 2024 à 14:12

Re,

Deux propositions à tester :

=SI(NB.SI(Tableau2[Extension mail];TEXTE.AVANT(TEXTE.APRES(Tableau1[@[Mail client]];"@");"."))>0;"Ok";"Nok")
=SI(SOMME(--ESTNUM(CHERCHE(Tableau2[Extension mail];Tableau1[@[Mail client]])));"Ok";"Nok")
0
Tibolastico > bigoudiii Messages postés 233 Date d'inscription lundi 19 décembre 2022 Statut Membre Dernière intervention 28 août 2024
19 févr. 2024 à 14:38

Très fort j'avais pas vu la chose comme ça ! 

Le truc c'est que je viens de réussir aussi de mon côté ahah ! Mais en vrai je me suis jamais penché sur les formules que tu as écrite donc je suis tout de même preneur merci beaucoup pour tes efforts ! 

Si ça t'intéresses toi ou d'autres gens j'ai fait ça perso : 

=SI(SOMME(SI(ESTERREUR(TROUVE(Tableau9[Extension de mail client];cellule_mail_client));0;1))>0;"Oui";"Non")

Vu que la fonction :

SOMME(SI(ESTERREUR(TROUVE(Tableau9[Extension de mail client];cellule_mail_client));"Vrai";"Faux"))

me donnait une liste, j'ai juste fait une somme de cette liste en remplaçant le vrai / faux par 1 et 0. Si c'est supérieur à 0 tu me renvoies Client et inversement

0
bigoudiii Messages postés 233 Date d'inscription lundi 19 décembre 2022 Statut Membre Dernière intervention 28 août 2024 78 > Tibolastico
19 févr. 2024 à 16:28

Re,

Ok ça marche aussi.

Attention, la fonction TROUVE est sensible à la casse (majuscule/minuscule), dans ton cas il est préférable d'utiliser la fonction CHERCHE, non sensible à la casse.

Pour transformer les booléens VRAI/FAUX en 0 ou 1 tu peux utiliser le double signe moins (--) ou la fonction N, pas besoin de SI. Ta formule serait :

=SI(SOMME(--ESTERREUR(TROUVE(Tableau9[Extension mail];cellule_mail_client)))>0;"Oui";"Non")

Pour le fun sur ton fichier exemple une formule unique et dynamique pour l'ensemble du tableau :

=SI(BYROW(Tableau1[Mail client];LAMBDA(p;SOMME(--ESTNUM(CHERCHE(Tableau2[Extension mail];p)))))>0;"ok";"nok")
0