Copier des feuilles dans un autre classeur

mouloud -  
WhiteFang Messages postés 2063 Statut Membre -
salut
Je cherche comment copier toutes les feuilles (visibles uniquement) d'un classeur Excel dans un autre classeur Excel.

voici le code que j'ai trouvé, mais ça plante au niveau du

Sheets(FeuilleExportation).Copy after:=Workbooks("GestControlChefDEP").Sheets

Private Sub cmdExporter_Click()
'exporte les feuilles dans un autre document Excel

'ouverture d'un autre document Excel
Workbooks.Open FileName:= _
"C:\Mise en production protected\GestControlChefDEP.xlt"

'sélectionne le classeur du departement en contrôle
Workbooks("Ccgi - Beta.xls").Activate
'désactive la protection du classeur
ActiveWorkbook.Unprotect Password:="y25p918"

For Each FeuilleExportation In Worksheets

If FeuilleExportation.Visible = True Then

Sheets(FeuilleExportation).Copy after:=Workbooks("GestControlChefDEP").Sheets

End If
Next
End Sub

quelqu'un pourrait m'aider ?
merci

et non à la guerre...
A voir également:

3 réponses

bmgg4 Messages postés 180 Statut Membre 23
 
Bonjour,

Essaie avec une instruction comme celle-ci

Sheets("Liste").Copy After:=Workbooks("Classeur2.xls").Sheets("Total")

Monique
Elle est pas belle la vie ?
0
mouloud
 
Désolé, mais ca ne marche pas...
0
WhiteFang Messages postés 2063 Statut Membre 204
 
;-)

Private Sub cmdExporter_Click()
'--Déclaration des variables
Dim LeClasseur, ClasseurActif, ExportDansClasseur, F
'--Nom du classeur qui va recevoir les feuilles
LeClasseur = Application.GetOpenFilename
'--Test du retour de la boîte
If UCase(LeClasseur) = "FAUX" Then Exit Sub
'--Affectation de l'objet
Set ClasseurActif = Workbooks(ActiveWorkbook.Name)
'--Ouverture du classeur receveur
Workbooks.Open Reponse
'--Affectation de l'objet
Set ExportDansClasseur = Workbooks(ActiveWorkbook.Name)
'--Copie des feuilles
For Each F In ClasseurActif.Sheets
If F.Visible = True Then Sheets(F.Name).Copy Before:=ExportDansClasseur.Sheets(1)
Next
End Sub

;-)

Ca devrait rouler !! ;-)

Wild and Free
0
WhiteFang Messages postés 2063 Statut Membre 204
 
;-)

Pardon, je viens de me relire !!

Il faut écrire :

For Each F In ClasseurActif.Sheets
If F.Visible = True Then ClasseurActif.Sheets(F.Name).Copy Before:=ExportDansClasseur.Sheets(1)
Next

;-)

Wild and Free
0
WhiteFang Messages postés 2063 Statut Membre 204
 
Rhaaa, j'écris trop vite !! Je viens de voir une autre erreur !!

=> Workbooks.Open LeClasseur

!! Rhaa le boulet, luiii !! ;-)

Wild and Free
0