Copier coller dans un classeur ouvert par boite de dialogue
benjamin
-
Polux31 Messages postés 7219 Statut Membre -
Polux31 Messages postés 7219 Statut Membre -
Bonsoir,
je suis vraiment un nouveau dans le domaine applications sous VBA. c'est pourquoi je viens encore vers vous pour vous poser un problème.
En effet, je charge un fichier ANN_LEG.xlsx a partir de la commande application.getopenfilename. je veux une commande qui me permet de capter le nom de ce fichier pour me servir dans une procedure.
l'avantage de ce code est que l'operation de copier coller ci dessus s'effectuera dans le fichier ouvert par la commande apllication.getopenfilename.
Par exemple si je charge un fichier nommé TAMP.xlsx, Workbooks(" ANN_LEG.xlx").Worksheets("tamp_cumul").Copy Workbooks(" ANN_LEG.xlx").Worksheets("cumul").Range("BC1")
ne fonctionne pas. il faut que l'operation de copier coller s'effectue cette fois dans Workbooks(" le nom du fichier telechargé ".
Aidez moi s'il vous plait.
je suis vraiment un nouveau dans le domaine applications sous VBA. c'est pourquoi je viens encore vers vous pour vous poser un problème.
En effet, je charge un fichier ANN_LEG.xlsx a partir de la commande application.getopenfilename. je veux une commande qui me permet de capter le nom de ce fichier pour me servir dans une procedure.
sub hjhjhj()
Workbooks("Tampon.xlsx").Worksheets("tamp_cumul").Copy Workbooks("ANN_LEG.xlx").Worksheets("cumul").Range("BC1")
end sub
l'avantage de ce code est que l'operation de copier coller ci dessus s'effectuera dans le fichier ouvert par la commande apllication.getopenfilename.
Par exemple si je charge un fichier nommé TAMP.xlsx, Workbooks(" ANN_LEG.xlx").Worksheets("tamp_cumul").Copy Workbooks(" ANN_LEG.xlx").Worksheets("cumul").Range("BC1")
ne fonctionne pas. il faut que l'operation de copier coller s'effectue cette fois dans Workbooks(" le nom du fichier telechargé ".
Aidez moi s'il vous plait.
2 réponses
-
Bonjour,
Le plus simple de créer un objet pour chaque classeur ouvert et de passer l'objet classeur en paramètre de la procédure qui fera le copier/coller.
Un exemple :
Sub OuvertureFichier() Dim wk As Workbook Dim fichier As String fichier = Application.GetOpenFilename Set wk = Workbooks.Open(fichier) Call CopyFeuille(wk) End Sub Private Sub CopyFeuille(ByRef wk As Workbook) Workbooks(" ANN_LEG.xlx").Worksheets("tamp_cumul").Copy wk.Worksheets("cumul").Range("BC1") End Sub
;0)
-