Discussion:
Copier onglets vers nouveaux tableaux à onglet unique
(trop ancien pour répondre)
gridou22
2020-05-19 13:36:01 UTC
Permalink
Bonjour,
J'ai un fichier xls avec 16 onglets (maximum).
Et je voudrais qu'une macro génère un nouveau tableau par onglet mais que c
nouveau tableau soit composé d'un seul onglet.
OU en d'autres termes : créer un nouveau classeur pour chaque feuille et d'un
seule feuille.

J'ai essayé avec : -->

Sub Onglet()
For Each f In ActiveWorkbook.Sheets
n = f.Name
f.Copy
ActiveWorkbook.SaveAs "e;c:temp"e; & n & "e;.xls"e;
ActiveWorkbook.Close
Next
End Sub

mais ça ne marche pas :(
J'ai besoin d'aide :) Merci
MichD
2020-05-19 14:15:27 UTC
Permalink
Bonjour,

Dans un module de ton classeur, copie cette macro :

'----------------------------------------------
Sub test()
Dim Sh As Worksheet
Dim Répertoire As String

'Chemin où tu veux enregistrer les fichiers créés
'chaque fichier créé portera le nom de la feuille du classeur
'Le format du fichier : XlExcel7 -> pour .xls
Répertoire = "E:\Excel\"

Application.ScreenUpdating = False
For Each Sh In ThisWorkbook.Worksheets
Sh.Copy
With ActiveWorkbook
.SaveAs Filename:=Répertoire & Sh.Name & ".xls",
FileFormat:=xlExcel7
.Close
End With
Next
Application.ScreenUpdating = True

End Sub
'----------------------------------------------

MichD

Loading...