VBA - enregistrement des onglets dans des fichiers à part

pepsi

XLDnaute Occasionnel
Bonjour

J'ai un document Excel composé de 4 onglets.

Je cherche à écrire une macro qui me permettrait "d'exporter" ces 4 onglets dans 4 fichiers Excel.

Ces fichiers excel seraient enregistrés dans le même répertoire que le fichier source et seraient nommés en fonction du nom de l'onglet.

Pour le moment mon code donne ca (mais ne fonctionne pas)
VB:
Sub Macro1()
'
' Macro1 Macro

    Sheets("feuil1").Copy
    ThisWorkbook.SaveAs ThisWorkbook.Path & ".xls"
    Sheets("feuil2").Copy
    ThisWorkbook.SaveAs ThisWorkbook.Path & ".xls"
    Sheets("feuil3").Copy
    ThisWorkbook.SaveAs ThisWorkbook.Path & ".xls"
    Sheets("feuil4").Copy
    ThisWorkbook.SaveAs ThisWorkbook.Path & ".xls"

End Sub

Quelqu'un peut m'aider ?

Merci d'avance
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : VBA - enregistrement des onglets dans des fichiers à part

Bonjour Pepsi, bonjour el forum,

Peut-être comme ça :
Code:
Sub Macro1()
Dim o As Worksheet 'déclare la variable o (Onglet)
Dim no As String 'déclare la variable no (Nom de l'Onglet)
Dim chem As String 'déclare la variable chem (CHEMin)
 
chem = ThisWorkbook.Path & "\" 'définit la variable chem
For Each o In Sheets 'boucle sur tous les onglets du classeur
    no = o.Name 'définit la variable no
    o.Copy 'copy l'onglet
    'crée un nouveau classeur ayant pour nom de nom de l'onglet dans le même dossier
    ActiveWorkbook.SaveAs (chem & no & ".xls")
    Next o 'prochain onglet de la boucle
End Sub
 
Dernière édition:

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 196
Messages
2 086 099
Membres
103 116
dernier inscrit
kutobi87