Extraction de données d'un fichier vers un autre via macro

  • Initiateur de la discussion Initiateur de la discussion Fab117
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Fab117

XLDnaute Impliqué
Salut,
J'ai un fichier qui contient des n° d'analyse.
Pour chacun (hormis ceux où les champs sont déjà remplis) je dois aller rechercher dans une base de données les : nom et durée du produit.
Comme cela est long, fastidieux et surtout source d'erreur je voudrais automatiser ceci.
J'ouvre donc les 2 fichiers (joints ci-dessous) et en démarrant la macro il est supposé jongler d'un fichier à l'autre.
MAIS ...
il bloque sur le passage d'un fichier à l'autre (je les ai définit dans des variables, car ils peuvent varier et comme ça, je n'aurai que 2 lignes à modifier dans la macro).
J'ai définit les variables comme :

Dim F_FichierSource As Windows
Dim F_FichierBaseDeDonnee As Windows

et il bloque sur la ligne :

Set F_FichierSource = Windows("Suivi v02.xls")

Quelqu'un peut-il m'aider svp.
Merci.

Fab
 

Pièces jointes

Re : Extraction de données d'un fichier vers un autre via macro

Bonjour

monfichier = activeworkbook.name (ou activewindow)
mabase="Base de donnee.xls"
monchemin=thisworkbook.path & "\"

workbooks.open thisworkbook.path & "\" & mabase

windows(monfichier).activate
windows(mabase).activate

a tester
 
Dernière édition:
Re : Extraction de données d'un fichier vers un autre via macro

re

je pense que cela marche

monfichier = ActiveWorkbook.Name
mabase = "Base de donnee.xls"
monchemin = ThisWorkbook.Path & "\"

Workbooks.Open ThisWorkbook.Path & "\" & mabase

Windows(monfichier).Activate
Windows(mabase).Activate
 
Re : Extraction de données d'un fichier vers un autre via macro

bonjours
je te propose de contourner le probleme via une ptit macro qui te

pemet ensuite d utiliser la fonction recherchev pour le nom du produit

Sub Macro1()

Windows("Base de donnee.xls").Activate
Range("D2").Select
ActiveCell.FormulaR1C1 = "=RC[-3]"
Selection.AutoFill Destination:=Range("D2😀8")
Range("D2😀8").Select
Windows("Suivi v03.xls").Activate
End Sub

ensuite dans ton fichier Suivi v03
dans la cellule c3
=RECHERCHEV(B3;'[Base de donnee.xls]Table1'!$B:$D;3)
dans la cellule d3
=RECHERCHEV(B3;'[Base de donnee.xls]Table1'!$B:$C;2)
ensuite tu selectionne c3:d3 et tu double clic sur la poigné de recopie
bien sur ce n est pas la panacé mais ca marche!

attention dans la macro
Windows("Base de donnee.xls").Activate
ceci suppose que ce fichier soit déjà ouvert au préalable !
si tu lance cette macro depuis l autre fichier
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
548
Retour