XL 2016 macro analyse de données et copier coller

crown54

XLDnaute Junior
Bonsoir aux pros VBA,
je reviens avec un nouveau défi:
je souhaiterais une macro qui me permette pour chaque cellule d'une colonne dans une feuille de retrouver cette même valeur dans la colonne d'une autre feuille.
Une fois que cette valeur est trouvée il doit copier la valeur de la cellule à sa droite et la coller dans la cellule de droite de la feuille initiale.
 

job75

XLDnaute Barbatruc
Bonsoir crown54,

Pourquoi du VBA ? Ce problème se règle très facilement par une formule avec RECHERCHEV.

A+
 

crown54

XLDnaute Junior
oui pour la comparaison mais ensuite pour le copier de la cellule de droite avec un coller sur la cellule de droite de la première feuille le tout en automatique il faut bien utiliser une macro non?
 

job75

XLDnaute Barbatruc
Pas du tout, comme je l'ai dit le VBA est inutile si l'on veut récupérer uniquement les valeurs.
 

crown54

XLDnaute Junior
je m'explique peut être mal.
je reprends: dans une feuille, j'ai une colonne A intitulée numéro de série avec un mélange de chiffres et de lettres et une colonne B qui lui associe un numéro d'identification interne. Dans une seconde feuille j'ai la même chose mais pas dans le même ordre et je voudrais que lorsque l'on retrouve le numéro de série de la première feuille dans la seconde, il copie le numéro d'identification interne dans cette seconde feuille pour la coller dans la première.
Je joins un fichier pour que ça paraisse plus clair.
Merci de ton aide en tout cas
 

Fichiers joints

job75

XLDnaute Barbatruc
Bonjour crown54, le forum,
Ce problème se règle très facilement par une formule avec RECHERCHEV.
Formule en Feuil1!C2 du fichier joint :
Code:
=SIERREUR(RECHERCHEV(""&A2;Feuil2!A:B;2;0);"")
A2 est converti en texte car en Feuil2 les numéros de série sont tous des textes.

PS : j'ai épuré le fichier en supprimant les lignes parasites en Feuil1, vous êtes un peu gonflé de déposer un fichier de 5,4 Mo !!!

Bonne journée.
 

Fichiers joints

crown54

XLDnaute Junior
Bonjour
oups mince désolé j'ai copié les colonnes et pas fait attention que le fichier était si lourd.
Merci de votre aide je vais tester cela
 
Dernière édition:

crown54

XLDnaute Junior
re bonjour,
je viens de tester mais dans mon tableau d'origine cela ne fonctionne pas. J'ai créé une nouvelle colonne mis la formule retravaillée que voici : =SIERREUR(RECHERCHEV(""&F2;'extraction équipement'!F2:F1083;2;0);"") mais rien pas de message d'erreur les cases sont toutes vides.
j'ai du oublié un truc dans la formule sans doute. On met bien cette formule dans la feuille où l'on veut modifier le numéro d'identification?
Par contre je ne comprends pas pourquoi vous dites que dans la feuil2 les numéros de série sont tous des textes il y a des chiffres également?
 

job75

XLDnaute Barbatruc
Le B A BA quand on veut de l'aide c'est de déposer le bon fichier.
Par contre je ne comprends pas pourquoi vous dites que dans la feuil2 les numéros de série sont tous des textes il y a des chiffres également?
Sur le fichier de mon post #6 entrez en Feuil2!C2 la formule =ESTNUM(A2) et tirez vers le bas : les valeurs en colonne A ne sont pas des nombres...
 

crown54

XLDnaute Junior
donc si je comprends bien avec vous nous n'avons pas le droit à l'erreur! il me semble m'être excusé.
si je regarde la cellule A1 je vois bien un nombre dedans et aucune lettre. Cela peut-il venir du fait qu'il s'agisse d'une extraction d'un logiciel de GMAO?
merci de votre aide
 

job75

XLDnaute Barbatruc
Quand je parle du bon fichier c'est bien sûr du fichier avec votre recherche en colonne F qu'il s'agit.
 

crown54

XLDnaute Junior
ok désolé je n'avais pas compris votre remarque. J'ai voulu alléger le fichier en info (et pas en poids ;) )
je vous mets donc le bon fichier
 

Fichiers joints

job75

XLDnaute Barbatruc
Bah je n'avais pas fait attention, votre formule =SIERREUR(RECHERCHEV(""&F2;'extraction équipement'!F2:F1083;2;0);"")

est erronée, il faut bien sûr écrire =SIERREUR(RECHERCHEV(""&F2;'extraction équipement'!F$2:G$1083;2;0);"")

J'espère que vous savez pourquoi il faut 2 colonnes et aussi pourquoi utiliser le dollar $.
 

job75

XLDnaute Barbatruc
Dans votre fichier du post #12 il ne faut pas convertir en texte les valeurs de la colonne F, utiliser en Feuil1!H2 :
Code:
=SIERREUR(RECHERCHEV(F2;Feuil2!F$2:G$1083;2;0);"")
 

job75

XLDnaute Barbatruc
Re,

Je suppose que vous êtes un peu perdu avec ces valeurs en colonnes F qui tantôt sont des nombres tantôt sont des textes !

Pour éviter tout problème il faut convertir en texte les valeurs en colonne F des 2 feuilles :
Code:
=SIERREUR(RECHERCHEV(""&F2;""&Feuil2!F$2:G$1083;2;0);"")
Mais il s'agit alors d'une formule matricielle à valider par Ctrl+Maj+Entrée.

Fichier (2).

A+
 

Fichiers joints

crown54

XLDnaute Junior
ok cela fonctionne mais effectivement il y a des zones floues. Pourquoi la colonne I? a quoi sert-elle?
Par contre du coup je peux comparer les 2 colonnes mais concernant le copier du numéro d'identification de la Feuil2 pour le coller dans la Feuil1 je ne peux pas récupérer ce qui est écrit, il colle la formule.
 

Discussions similaires


Haut Bas