Dans Excel, vous ne pouvez copier des feuilles vers d’autres classeurs que s’ils sont ouverts.
Ainsi, la séquence de copie de feuilles de calcul dans un autre classeur est la suivante:
- Ouvrez les classeurs cible.
- Processus de copie.
- Enregistrez et fermez le classeur cible.
Vous pouvez le faire plus rapidement avec l’aide de VBA. L’ensemble du processus peut s’exécuter en arrière-plan.
Sub CopieFeuilleCalcul () Dim monclasseur As Workbook Dim mafeuille As Object Set mafeuille = ActiveSheet Application.ScreenUpdating = False On Error Resume Next Set monclasseur = Workbooks.Open _ ("C:\MES DOSSIERS\Classeur1.xls") mafeuille.Copy Before:=monclasseur.Sheets(1) monclasseur.Save monclasseur.Close Application.ScreenUpdating = True End Sub
Pour éviter d’avoir à suivre le processus à l’écran, désactivez la mise à jour de l’écran au début de la macro. Ensuite, ouvrez un classeur spécifique (Classeur1.XLS) et copiez la feuille de calcul actuelle dans ce classeur. Ensuite, enregistrez et fermez le classeur. Ce n’est qu’alors que vous réactivez la mise à jour de l’écran.