Vlookup sur deux classeur
Résolu
Vinceb9
-
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je cherche désespérément à faire un Vlookup sur un classeur source .
J'ai créé un Userform avec une textbox de recherche et une textbox de resultat. En gros la situation c'est que je travail dans le sol béton et il y a 2000 formules béton à peu prés donc je voulais que l'on mette le code de la formule et que la formule soit afficher .
Probleme : les formule se trouve sur un autre classeur et meme en mettant le chemin ca marche pas et sa m'enerve !!! J'ai fait tout les forum en essayant plein de chose mais pas moyen ....
Help me please !!!
Je cherche désespérément à faire un Vlookup sur un classeur source .
J'ai créé un Userform avec une textbox de recherche et une textbox de resultat. En gros la situation c'est que je travail dans le sol béton et il y a 2000 formules béton à peu prés donc je voulais que l'on mette le code de la formule et que la formule soit afficher .
Probleme : les formule se trouve sur un autre classeur et meme en mettant le chemin ca marche pas et sa m'enerve !!! J'ai fait tout les forum en essayant plein de chose mais pas moyen ....
Help me please !!!
A voir également:
- Vlookup sur deux classeur
- Comment faire deux colonnes sur word - Guide
- Deux ecran pc - Guide
- Nombre de jours entre deux dates excel - Guide
- Deux whatsapp sur un téléphone - Guide
- Sms deux ronds - Forum Xiaomi
3 réponses
Bonjour,
Essayez ceci :
Attention, les cellules a1 et B1 de votre feuille active doivent être vides, sinon changer A1 et B1 dans le code ci-dessous
Essayez ceci :
Attention, les cellules a1 et B1 de votre feuille active doivent être vides, sinon changer A1 et B1 dans le code ci-dessous
Dim temp As String, repertoire As String, nomfichier As String, nomfeuil As String 'le textbox recherche est : TextBox1, le résultat : TextBox2 repertoire = "C:\blabla\travail\beton\ nomfichier = "beton" nomfeuil = "FeuilBdDBeton" [A1] = TextBox1.Value temp = "=vlookup(A1,'" & repertoire & "\[" & nomfichier & ".xls]" & nomfeuil & "'!$A$2:$B$1000,2,false)" [B1].Formula = temp If Not IsError([B1]) Then TextBox2 = [B1].Value Else MsgBox "Référence non trouvée" End If Range("A1:B1").Clear
Ca ne marche pas ! le message d'erreur se met tout le temps ! mais est-ce-que sa vient de ce que j'ai mis pour l'inserer :
"Private sub textbox1_afterupdate()"
"Private sub textbox1_afterupdate()"
vérifie que tout est bien saisi.
Notamment, j'ai oublié un " dans la variable repertoire :
Donc vérifie les noms de répertoire, fichier (qu'il n'y ai pas deux fois ".xls" par exemple), nomfeuil, la plage contenant les données (dans l'exemple : $A$2:$B$1000), le nombre de colonnes de décalage du VLookup (2 dans l'exemple) etc.
Pour faire cela, teste en supprimant la ligne : Range("A1:B1").Clear comme cela tu verras la formule s'afficher en B1 et tu pourras apporter les modifications nécessaires au code.
Je ne penses pas que cela vienne de "Private sub textbox1_afterupdate()". Mais pour être sur, soit :
- tu ajoutes un bouton et copie-colle le code dans l'événement click de ce bouton
- essaye avec la procédure événementielle "Private sub textbox1_Exit(cancel as J'saisplusquoi)"
Notamment, j'ai oublié un " dans la variable repertoire :
repertoire = "C:\blabla\travail\beton\"
Donc vérifie les noms de répertoire, fichier (qu'il n'y ai pas deux fois ".xls" par exemple), nomfeuil, la plage contenant les données (dans l'exemple : $A$2:$B$1000), le nombre de colonnes de décalage du VLookup (2 dans l'exemple) etc.
Pour faire cela, teste en supprimant la ligne : Range("A1:B1").Clear comme cela tu verras la formule s'afficher en B1 et tu pourras apporter les modifications nécessaires au code.
Je ne penses pas que cela vienne de "Private sub textbox1_afterupdate()". Mais pour être sur, soit :
- tu ajoutes un bouton et copie-colle le code dans l'événement click de ce bouton
- essaye avec la procédure événementielle "Private sub textbox1_Exit(cancel as J'saisplusquoi)"
J'ai essayer de faire ce que tu m'a dit. J'avais plusieur erreur mais il y en a une que j'arrive pas à changer et je ne sais pas pourquoi :
dans ma cellule j'ai :
"=RECHERCHEV(A1;'C:\Users\Vincent\Documents\Excel\\[BDD Formules Bétons.xls]BDD'!$A$2:$B$2000;2;FAUX)"
j'ai deux \\ mais je n'arrive meme pas à l'enlever manuellement ...
dans ma cellule j'ai :
"=RECHERCHEV(A1;'C:\Users\Vincent\Documents\Excel\\[BDD Formules Bétons.xls]BDD'!$A$2:$B$2000;2;FAUX)"
j'ai deux \\ mais je n'arrive meme pas à l'enlever manuellement ...