Bonjour,
Je souhaite copier le contenu d'une feuille dans une autre feuille qui se trouve dans un autre classeur. J'utilise le code suivant:
Cela fonctionne correctement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Windows("MonFichier.xls"). Activate Sheets("Sheet1").Select Cells.Select Application.CutCopyMode = False Selection.Copy Windows("MonAutreFichier.xls").Activate Sheets("Sheet1").Select Cells.Select ActiveSheet.Paste
Maintenant je dois utiliser cette fonction plusieurs fois donc au lien d'utiliser des noms de fichiers/feuilles en dur j'utilise des variables que je passe a la fonction:
les variables:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 ShtToCopy = "Sheet1" SourceFile = "c:\files\source.xls" ThisFile= "c:\other files\dest.xls"Mais ca ne fonctionne pas, il bloque sur l'instruction suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Workbooks.Open SourceFile Windows(SourceFile).Activate Sheets(ShtToCopy).Select Cells.Select Application.CutCopyMode = False Sheets(ShtToCopy).Select Selection.Copy Windows(ThisFile).Activate Sheets(ShtToCopy).Select Cells.Select ActiveSheet.Paste
avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part Windows(SourceFile).Activate
J'ai l'impression que l'objet "Windows" ne supporte pas le nom de variable en tant qu'argument...
Code : Sélectionner tout - Visualiser dans une fenêtre à part run-time error 9, subscript out of range
Merci pour votre aide
Partager