Retrouver plusieurs chaines de caracteres dans une plage

Bonjour

nouvellment débarquée sur ce forum, voici mon pb

j'ai un fichier avec deux colonnes

la première contient 50 numeros de telephone, la seconde 3000 numéros de telephone

je voudrais identifier dans la seconde colonne, si l'un ou plusieurs des 50 numéros de la colonne 1 apparait (un meme numero de telephone de la colonne 1 peut apparaitre plusieurs fois dans la colonne 2)

je ne sais pas trop comment faire donc toute suggestion sera la bienvenue

Merci

CBdS

Bonjour. Biencenue sur le Forum

Supposons tes 50 Nos en colonne A, tes 3000 en colonne B à partir de B2

Pour identifier les B présents en A, tu peux écrire en C2

=SI(NB.SI(A:A;B2)>0;1;"")

et incrémenter vers le bas.

Les 1 de la colonne C indiqueront si le No en B est ptrésent en colonne A

Cordialement

Merci beaucoup première étape réussie de mon coté

je complique un peu

dans ma colonne 1 ce ne sont plus des numero de tel, mais des noms de famille

et dans ma colonne 2, des noms de famille aussi mais avec parfois devant Mr mme ou le prenom

donc je ne recherche pas une equivalence des deux cellules mais si des cellules de la colonne 2 contiennet les caracteres de la colonne 1

suis assez comprehensible j'ai un petit doute ...

CbdS

Bonjour

suis assez comprehensible j'ai un petit doute ...

Lève vite ce doute. Envois quelques données sur un fichier Excel en exemple

Cordialement

voici

j'ai complété la colonne 3 mais en manuel....

276example1.xls (13.50 Ko)

Salut CBdS !

Arf ça m'a bien pris 2 heures mais j'y suis parvenue ^^

Je t'ai fait une solution en VBA, parce qu'en formule je n'ai pas trouvé de solution.

La macro fait une boucle sur chaque cellule non-vide de la colonne A et recherche dans la colonne B la chaine de caractère. Si elle la trouve, elle place un "1" en face.

J'avais un début de solution en formule qui fonctionne avec une chaine de caractères, mais pas pour rechercher en même temps les chaines de caractères de chaque cellule de la colonne A, ou alors il faut multiplier les colonnes, ce qui n'est pas le but. Je te l'ai tout de même indiquée, à toi de voir si tu peux l'adapter

En tous cas c'est un bon exercice pour moi qui ne suis pas encore très douée en VBA ^^

Gaz0line

491exemple1-cbds.zip (12.92 Ko)

Bonjour

Formule matricielle en ligne 2 à incrémenter vers le bas

=(SOMME(ESTNUM(CHERCHE(SI($A$2:$A$10<>"";$A$2:$A$10);B2))*LIGNE($A$2:$A$10))>0)*1

Cordialement

483example1.xls (16.00 Ko)

Bonsoir à tous,

même principe qu'amadeus, en un peu plus court. En C2 :

=SOMMEPROD(SI(ESTERREUR(CHERCHE($A$2:$A$6;B2));0;1))

formule matricielle à valider avec shift+ctrl+entrée

Retourne 2 pour "Girardot jacques" car les 2 noms sont présents en A.

eric

Merci aux trois intervenants

Gazoline : je ne maitrise pas du tout VBA pour pouvoir reproduire ce que tu as fait mais je ne désespère pas de m'y mettre un jour...si cela t'a fait progresser c'est déjà çà....

en revanche j'ai testé les deux formules matricielles d'Amadeus et d'Eric qui fonctionnent impec, la seule chose c'est qu'il faudra qu'un jour je comprenne ce que je fait plutôt que de recopier bêtement la formule...

j'ai deja compris qu'il fallait valider par ctrl shift entrée une formule matricielle t non par un entrée simple mais bon a part cela j'ai encore du chemin a parcourir pour comprendre la différence entre une formule simple et une formule matricielle

En tous cas un grand merci a tout le monde de cette contribution

CBdS

Rechercher des sujets similaires à "retrouver chaines caracteres plage"