|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 6 ![]() |
Bonsoir,
Je débute en VBA et j'ai un peu du mal à résoudre mon problème qui est : faire appel à un autre classeur. Je m'explique, dans un premier classeur j'ai une base de donnée (BD.xls) et dans un deuxieme classeur une fiche de renseignement (FR.xls). Dans cette base on trouve le nom du produit, son indice, son code achat... J'aimerai pouvoir effectué une recherche dans le classeur BD à l'aide de deux critères renseignés dans le classeur FR (en celulle A2 : nom du produit et en B2 son indice). Le résultat corréspondant à ces deux critère doit apparaitre dans la cellule C2 du classeur FR.xls. J'arrive à réaliser la fonction recherche lorsque le Base de Donnée est dans le même classeur que les critères, mais pas quand ces derniers sont dans un autre classeur. Pourriez vous me guider?? Merci d'avance. |
|
|
00
|
|
|
#2 | |
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Bonsoir,
Si, tu peux le faire, à condition que les deux classeurs soient ouverts. Poste ta macro.
__________________
Cordialement. Daniel Citation:
|
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : avril 2008 Messages : 6 ![]() |
Voila ma formule de recherche si tout est dans le même classeur:
Code :
Merci en tout cas de regarder. |
||
|
|
00
|
|
|
#4 | |||||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Les deux classeurs doivent être ouverts; il n'y a donc pas lieu de préciser leur chemin.
Code :
Code :
__________________
Cordialement. Daniel Citation:
|
|||||
|
00
|
|
|
#5 | ||
![]() ![]() |
bonsoir,
le plus propre est quand même d'utiliser 2 variables objet de type worksheet pointant sur chacune de tes feuille et éviter des codes aléatoires ou tu ne précise pas le classeur concerné style : Code :
sheets("feuil2").Range("C2").Value = "Pas de code info" en considérant que ton classeur FR contient ton code et ouvre le fichier bd inspire toi de Code :
__________________
page à bbil : dernières entrées : Débuter en VB6 Mes contributions en téléchargement Les pages VB : FAQs, Tutoriels VB, Outils , Sources, WIKI Impératif "A LIRE AVANT DE POSTER"
|
||
|
00
|
|
|
#6 | |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 6 ![]() |
Bonjour,
Tout d'abord merci à toi Daniel. Car ton code fonctionne quand les deux classeurs sont ouverts! BBil, merci de préter attention au sujet. J'ai essayé d'adapter ton code mais quand je le genere, une erreur arrive. Pour la ligne 8 : Set shBD = wkBD.Sheets("Feuil1") Citation:
Merci à vous deux (Daniel et BBil)! |
|
|
|
00
|
|
|
#7 | ||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Bonjour,
Citation:
Code :
set wkBD = worbooks.open("C:\...bd.xls") 'ouvre fichier BD
__________________
Cordialement. Daniel Citation:
|
||
|
00
|
|
|
#8 | |
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Excuse-moi, mais le sujet de ton message m'a trompé. Tu peux récupérer des cellules dans un classeur fermé. Regarde le tuto ici :
http://silkyroad.developpez.com/VBA/ClasseursFermes/
__________________
Cordialement. Daniel Citation:
|
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 6 ![]() |
Je te remerci Daniel! J'ai pu résoudre mon probleme grace à toi (et a BBil).
Merci |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com