Comparer 2 colonnes chaine commune

Bonjour.

Voici mon problème.

J'ai un fichier excel avec un certain nombre de référence dans 2 colonnes.

Je souhaiterais comparer ces 2 colonnes et renvoyer dans une autre colonnes les valeurs des cellules de la 2eme colonnes qui ont une chaine commune d'au moins 11 caractères avec une des cellules de la première colonne.

Par exemple (parce que là je ne suis pas certain d'être clair )

Colonne1

12345678910

abcdefghijk

Colonne 2 (il y a plus de ligne qu'en Col 1 ce qui est le cas dans mon fichier)

12345678919

hj12345678910dg

alfabcdefghijk

abcdefghkl45

Et je souhaiterais avoir ceci en 3ème colonne

12345678910dg (la1ere ligne de la colonne 2 qui a une chaine de 11 caractères en commun avec la première ligne de la Col1)

alfabcdefghijk (la 3ème ligne de la Col 2)

Si une âme charitable voulait bien me donner un coup de main je lui en serait reconnaissant .

Bonjour,

Un essai :

130comp.xlsx (8.95 Ko)

Crdlmt

Et bien on dirait que ça fonctionne, je pensais que ce serait plus compliqué, j'aurais du le trouver moi même saperlipopette , j'ai honte .

En plus ça me met le résultat en face de la ligne correspondante, c'est nikel.

Merci DjiDji59430

Edit: petit souci en fait concernant les 11 caractères, du coup il me sort aussi des correspondance pour moins de caractères.

Est-il possible de rajouter cette donnée dans la formule ?

Mais il y a quelque chose qui m'étonne, où, dans la formule est-il précisé qu'il faut une chaine de 11 caractères minimum ?

Du coup j'ai edité ma réponse précédente.

Bon excusez moi j'ai crié victoire un peu tôt :/.

En fait la formule ne fonctionne pas comme je le voudrais car les correspondance avec des chaines de moins de 11 caractères vont aussi matcher et si la chaine commune est trop loin dans la donnée ça ne la trouve pas

Par exemple si dans ma première colonne j'ai 12345678910 et que j'ai une référence azertyuiop-12345678910 dans ma 2ème il ne va pas la faire matcher avec la première colonne alors qu'il y a pourtant le 12345678910 en commun.

Merci.

Re

Au moins 11 caractéres

=SIERREUR(SI(NBCAR(D3)>=11;RECHERCHEV("*"&D3&"*";$J$3:$J$6;1;0);"");"")

Crdlmt

Merci j'essaye ça demain

Bonjour.

Voilà j'ai essayé la formule mais il demeure toujours un problème.

Lorsque j'ai dans le fichier un nom du type "12345678901" dans la première colonne et "hdhdlsldhgqs-12345678901" dans la 2eme colonne, il ne trouve pas la chaine commune "12345678901" et ne renvoie pas de réponse positive et vice versa. Il faudrait vraiment que quel que soit l'emplacement de la chaine dans les valeurs des cellules 1 et 2 les correspondances soient renvoyées.

Et j'ai aussi pensé à autre chose, il y a des cas où il peut y avoir plusieurs valeur répondant aux critères dans la colonne 2, est-il possible que les différentes réponses se mettent sur la même ligne dans la colonne suivante

Par exemple il y aurait 12345678910 dans la première colonne et dans la 2eme : az12345678910 puis msk12345678910 et 12345678910fds et il faudrait que les 3 réponses s'affichent sur la même ligne dans la colonne 3,4 et 5.

Y a t-il moyen d'arranger cela en modifiant la formule ou un code vba peut-être ?

Merci encore et bonne journée.

Cordialement.

Re

en VBA, je ne sais pas faire.

On ne peut pas inverser les recherches

C'est toujours on cherche la 1 ère colonne dans le 2 éme

un nouvel essai :

19comp-v2.xlsx (10.63 Ko)

Crdlmt

Ça n'a pas l'air de fonctionner dans mon fichier.

J'aurais du commencer par là, le voici

Colonne A les références à chercher dans la colonne B

Puis résultat en colonne C, D, E etc...

24doublon-test.xlsx (164.58 Ko)

Encore merci pour le coup de main

re

si, ça fonctionne, mais la methode n'est pas bonne, car le fichier est trop grand pour toutes les matricielles (prés de 30 000) et a moins d'avoir une "bete de course", il faut aumoins 3 à 4 mn pour que le fichier réagisse. Il faudrait passer en VBA.

je te joins ton fichier avec les matricielles :

22doublon-test-v1.xlsx (742.65 Ko)

Retente a chance sur le en mettant dans le titre remplacements matricielle par du VBA

Crdlmt

Ok, bien compris, et encore merci.

Rechercher des sujets similaires à "comparer colonnes chaine commune"