Comment détacher des onglets en plusieurs fichiers

Résolu
Nonnoo Messages postés 29 Statut Membre -  
Nonnoo Messages postés 29 Statut Membre -
Bonjour,

J'ai un fichier excel avec plusieurs onglets nommés 01;02;03... et un onglet global qui récupère les chiffres de chaque onglet.
Chaque onglet est destiné à une personne différente qui est censé le remplir chaque semaine.

Je souhaiterai, dans un premier temps, une macro qui puisse me détacher chaque onglet pour que chaque personne ait son propre fichier sans regarder celui des autres. Une sorte de découpage de fichier.

Et dans un deuxième temps, une deuxième macro qui rassemblerait tout ces fichiers (qui auront été au préalable rempli), et qui viendrait coller les fichiers les uns à la suite des autres dans des onglets, tout en suivant leur ordre, 01;02;03... pour que mon onglet global puisse calculer le montant total. Un recollage des onglets dans un même fichier.

Pensez-vous que c'est possible ?
Merci d'avance pour votre aide.

Nono
A voir également:

1 réponse

jordane45 Messages postés 40050 Statut Modérateur 4 754
 
Bonjour,

Pensez-vous que c'est possible ?

Oui.


dans un premier temps, une macro qui puisse me détacher chaque onglet

Utilises ton enregistreur de macro.
Effectue à la main, un clic-doit sur un onglet, puis selectionne déplacer ou copier , choisi : "nouveau classeur" ... et le tour est joué.
A partir de ce code, tu n'as plus qu'à le mettre dans une BOUCLE sur tes différents ONGLETS pour réaliser ce que tu souhaites.


dans un deuxième temps, une deuxième macro qui rassemblerait tout ces fichiers

Là il te faut une boucle qui va chercher les classeurs ( via la méthode Workbooks.Open ), puis récupère l'onglet de chaque classeur pour venir le mettre dans ton classeur principale (tu peux utiliser la même méthode que pour le cas N°1 )

1
Nonnoo Messages postés 29 Statut Membre
 
Merci beaucoup Jordane,
J'ai suivi ton conseil j'ai réussi à m'en sortir pour diviser mon fichier en créant :
- un dossier nommé "Fichiers à découper " où j'ai mis mon fichier excel à découper
- un dossier "Fichiers SX" où je voudrais que mes fichiers divisés soient.

Sur un autre fichier excel j'ai créer ma macro découpage avec un bouton, voici le code :

Sub Découpage()

' Découpage Macro

Dim FichierMacro
Dim FichierCible
Dim Chemin As String
Dim FichierSource As String

Application.ScreenUpdating = False

Chemin = ActiveWorkbook.Path
FichierMacro = ActiveWorkbook.Name

FichierSource = Dir(Chemin & "\Fichiers à découper\*.xls")


Workbooks.Open (Chemin & "\Fichiers à découper\" & FichierSource), UpdateLinks:=False
Workbooks(FichierMacro).Activate

Workbooks(FichierSource).Activate
Sheets("GLOBAL").Select
Application.DisplayAlerts = False
ChDir ActiveWorkbook.Path
For Each s In ActiveWorkbook.Sheets
s.Copy
ActiveWorkbook.SaveAs Filename:=s.Name
ActiveWorkbook.Close
Next s


'enregistre le fichier sous
ActiveWorkbook.CheckCompatibility = False
ActiveWorkbook.SaveAs Filename:= _
Chemin & "\Fichiers SX\" & "" _
, FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False

FichierCible = ActiveWorkbook.Name


End Sub


Cependant avec ce code, mes fichiers découpés ne vont pas dans le dossier "Fichiers SX" comme je le voudrai mais vont dans le dossier "Fichiers à découper".

Je ne sais pas ce qui cloche... Auriez-vous une idée ?

Merci par avance.

Nono
0