Cherche formule ou VB pour Correspondance entre 2 colonnes

benni.mvr

XLDnaute Nouveau
Bonjour tout le monde, je débute dans le VB que je trouve impressionant au niveau de ces possibilitées.

Ceci dit, je n'arrive pas à écrire le code ci-dessous:

si (valeur A2 Feuille2 = valeur A281 Feuille1) alors coller (valeur B281 Feuille1 dans B2 Feuille2)

A moin qu'avec une fonction tableau on puisse le faire...

Fichier joint en exemple ci dessous car trop gros:

Fichier xls

Et merci d'avance de votre aide

Benni
 

Jocelyn

XLDnaute Barbatruc
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

Bonjour le Forum,
Bonjour benni.mvr,

Je ne sais pas faire en VBA mais en formule tu mettre en B2 de la feuille résultat cette formule

Code:
=INDEX(base!$B$2:$B$1302;EQUIV(A2;base!$A$2:$A$1302;0))

et l'étirer vers le bas, mais attention la colonne A de la feuille base et la colonne A de la feuille résultat les données ne sont pas identique dans la feuille résultat il y a des epace aprés les codes et il n'y en a pas dans la feuille base . Il faut donc soit supprimer les espaces dans la feuille résultat soit ajouter des espaces dans la feuille bases exemple

cellule A2 feuille résultat ="CG25X25B1KG "
cellule A281 feuille base ="CG25X25B1KG"

Jocelyn
 

Pierrot93

XLDnaute Barbatruc
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

Bonjour Benni, Jocelyn

en vba cela pourrait donner ceci, à voir... :

Code:
If Sheets("Feuille2").Range("A2").Value = Sheets("Feuille1").Range("A281").Value Then _
    Sheets("Feuille2").Range("B2").Value = Sheets("Feuille1").Range("B281").Value

bonne journée
@+
 

benni.mvr

XLDnaute Nouveau
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

Grand Merci Jocelyn pour votre formule et surtout pour les espaces.

Car en effet j'avais testé plein d'autres formules et je ne comprenais pas pourquoi figurait #N/A

Sans les espaces effectivement ca fonctionne beaucoup mieu. Votre formule répond à mon problème, encore merci de votre rapiditée.

------------------------------
Pour le VBA, étant débutant, j'arrive à traduire partielement des codes déjà écrit, j'arrive ausssi à modifier des codes existant.
Mais je n'ai pas encore votre connaissance. Que dois je ecrire au dessus et en dessous de la condition IF.
Merci Pierrot d'avoir répondu et de l'interet que vous portez à mon problème.

Nous avons à faire à de grands connaisseurs, merci à tous.
 

Pierrot93

XLDnaute Barbatruc
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

Re,

essaye ainsi :

Code:
Option Explicit
Sub test()
If Sheets("Feuille2").Range("A2").Value = Sheets("Feuille1").Range("A281").Value Then _
    Sheets("Feuille2").Range("B2").Value = Sheets("Feuille1").Range("B281").Value
End Sub

à placer dans un module standard. ALT F11 à partir d'Excel, dans l'éditeur vba qui s'ouvre => barre de menu => insertion => module => tu colles le code donné, te reste plus qu'affecter cette macro à un bouton ou une image...

@+
 

benni.mvr

XLDnaute Nouveau
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

Bonjour le Forum,
Bonjour benni.mvr,

Je ne sais pas faire en VBA mais en formule tu mettre en B2 de la feuille résultat cette formule

Code:
=INDEX(base!$B$2:$B$1302;EQUIV(A2;base!$A$2:$A$1302;0))

et l'étirer vers le bas, mais attention la colonne A de la feuille base et la colonne A de la feuille résultat les données ne sont pas identique dans la feuille résultat il y a des epace aprés les codes et il n'y en a pas dans la feuille base . Il faut donc soit supprimer les espaces dans la feuille résultat soit ajouter des espaces dans la feuille bases exemple

cellule A2 feuille résultat ="CG25X25B1KG "
cellule A281 feuille base ="CG25X25B1KG"

Jocelyn

Re bonjour Jocelyn,



Grace à votre première aide, j'ai pu basculé sur un autre fichier.
J'ai inversé les colonnes en réutilisant votre formule avec d'autre données et je trouve des résultats aléatoires.
Ca me marque parfois #N/A. J'ai cherché mais je ne trouve pas pourquoi.

Fichier joint:

Fichier xls

Merci encore.
 

Jocelyn

XLDnaute Barbatruc
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

re,
Bonjour Pierrot93:),

alors si l'on prends en exemple (je n'ais pas tester les autres) les codes
4009155262079 et 4009155056173 des cellules A3 et A4 de la feuille 1 ces codes n'existe pas dans la feuille Base il est donc normal que excel renvoie #N/A

si tu ne veux pas voir ce renvoi tu peux changer en cellule B2 de la feuille la formule :

Code:
=INDEX(Base!$B$2:$B$284;EQUIV(A2;Base!$A$2:$A$284;0))

par

Code:
=SI(ESTERREUR(INDEX(Base!$B$2:$B$284;EQUIV(A2;Base!$A$2:$A$284;0)));"Ce code n'existe pas en feuille base";INDEX(Base!$B$2:$B$284;EQUIV(A2;Base!$A$2:$A$284;0)))

comme ca le renvoie sera Ce code n'existe pas en feuille base, et si tu préféres ne rien avoir du tout dans la formule tu remplaces:

"Ce code n'existe pas en feuille base"

par

""

Jocelyn
 

benni.mvr

XLDnaute Nouveau
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

Efectivement, il y a certain code innexistant. :eek: Honte pour moi !

Votre formule est top impec. Merci beaucoup.

Ca me donne envie d'aller plus loin.

Je me suis donc mis sur le VB et je viens, grace à l'aide précieuse également de Pierrot93, d'intégrer la macro en module VB rataché à un bouton que j'ai nomé "GO".

Quand je clic sur GO, impec la première valeur B2 s'y colle.

Par contre, pour les autres lignes, rien ne se passe.

Pouvez vous m'aidez Pierrot93 sur l'application des autres lignes.

Fichier joint de ma réalisation grace à votre aide:
Fichier_av_macro
 

Pierrot93

XLDnaute Barbatruc
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

Bonjour Benni, Jocelyn:)

Oui, le code donné, ne teste et copie qu'une seule cellule, donc réaction normale de la macro... Désolé mais je ne peux ouvrir ton fichier, je suis bloqué par mon proxy... Le mieux, est un tout petit fichier exemple placé directement sur le forum, pas besoin de toutes les données, simplement un échantillon sans données confidentielles, représentant bien le problème posé.

bonne journée
@+
 

benni.mvr

XLDnaute Nouveau
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

Voici le fichier échantillons

L'idée est donc d'étendre la macro existante au reste des lignes.

Explication en code couleur dans le fichier.

Merci d'avance Pierrot93...
 

Pièces jointes

  • VBA art-gen en dev2.xls
    35 KB · Affichages: 128

benni.mvr

XLDnaute Nouveau
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

bonjour benni.mvr

Salut a mes amis Pierrot et Jocelyn

Un essai

Bonsoir Pierrot93, Jocelyn, Pierrejean et le Forum

Et bien là, je suis impressioné! :) Grand merci Pierrejean, ca fonctionne à merveille par rapport au fichier échantillons.

Tout content de votre performance, je me suis donc servi de votre fichier en retour pour y coller mes données.

J'ai donc complété la matrice échantillons.

J'appuis sur GO, et nickel chrom !!! Merci.

Cepandent, j'ai aussi besoins d'inverser les valeurs de colonnes. C'est à dire, obtenir le code article grace aux colonnes gencode.

J'établi donc le test, puis GO....et là:

-> Erreur de chargement de la DLL. Erreur 48

Heuuuuuuu:confused:

Je me dit...bon ce n'est rien. Je ferme tout et je redémare le pc, pareil...:

Heuuuuuuu::confused::confused:

Je décide alors de réutiliser le fichier échantillons que vous m'avez envoyé et il fonctionne bien avec ses données. :mad:

Désoler de soliciter de nouveau votre aide.

Fichier joint avec l'erreur:

En tout cas, excélent travail ....:)

A très bientot. Merci encore
 
Dernière édition:

benni.mvr

XLDnaute Nouveau
Re : Cherche formule ou VB pour Correspondance entre 2 colonnes

Et la lumière fut !!!!!!!!!!!!!!!!


J'ai compris l'érreur:

En fait, j'"enregistrer sous" après avoir remplis mes colonnes et avec la macro activée suivi de fermeture puis réouverture et la "GO".

-> Erreur ....

Donc, j'ai testé ensuite en ouvrant mon fichier avec macro désactivé, puis chargement de mes nouvelles données dans les cellules puis enregistrer, fermeture, réouverture puis "GO"

Pas d'erreur. Impec !! :):):):):):)

Encore un énorme merci à Jocelyn, Pierrot93, Pierrejean. Je vais surment penser à contribuer pour votre développement.;)
 

Discussions similaires

Réponses
1
Affichages
1 K

Statistiques des forums

Discussions
312 330
Messages
2 087 349
Membres
103 526
dernier inscrit
HEC