Copie automatique de certaines feuilles dans un autre fichier

Fermé
fra7878 Messages postés 3 Date d'inscription samedi 26 septembre 2009 Statut Membre Dernière intervention 20 janvier 2015 - 15 janv. 2015 à 11:00
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 - 1 févr. 2015 à 18:19
Bonjour,

J'ai un tableur qui contient plusieurs feuilles et j'aimerais planifier un tâche mensuelle qui copie deux feuilles de ce même fichier vers un autre fichier situé ailleurs sur le disque.

Le fichier où seront copiées les données comportera déjà les feuilles qui porteront le même nom que sur le fichier d'origine, le principe serait d'écraser les datas lorsque le script tourne.

Pour info, je suis sur Office 2010.

Merci pour votre aide.


A voir également:

2 réponses

tyranausor Messages postés 3545 Date d'inscription jeudi 6 août 2009 Statut Membre Dernière intervention 1 avril 2022 2 031
1 févr. 2015 à 14:30
Bonjour, cela peut être possible avec une macro mais n'étant pas bon en vba, je ne peux te donner une ligne de code.

Dans ton code il est impératif de donner le chemin du fichier où tes données seront copiées
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
1 févr. 2015 à 18:19
Bonjour,

Je ne sais pas si c'est cela que tu désires. Cette macro copie la feuille dans un autre classeur et remplace l'ancienne feuille :

Sub CopierUneFeuilleDunClasseurDansLautre()
  Dim FichierOùCopier, FichierOùColler
   Application.DisplayAlerts = False
 FichierOùCopier = ActiveWorkbook.Name
  Workbooks.Open ("test.xlsx") 'a adapter, mettre peut-être le chemin complet du classeur qui reçoit la copie
    FichierOùColler = ActiveWorkbook.Name
    Workbooks(FichierOùCopier).Activate
    Sheets("Feuil1").Select 'a adapter
    Sheets("Feuil1").Copy After:=Workbooks(FichierOùColler).Sheets("Feuil1") 'a adapter
   Worksheets("Feuil1").Delete 'a adapter
   Sheets("Feuil1 (2)").Name = "Feuil1" 'a adapter
    MsgBox "Copie réussie"
 Application.DisplayAlerts = True
End Sub


Il faudrait faire l'opération pour chaque feuille que tu veux copier
0