Copier coller dans un classeur ouvert par boite de dialogue

benjamin -  
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   -
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.

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.
A voir également:

2 réponses

Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
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)
0
benjamin
 
Ca marche à merveille!
Nuls mots te suffit pour te dire merci!
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
De rien

Merci de mettre le sujet en résolu.
0