Eclater plusieurs onglets en plusieurs fichiers dédiés

Le
anthooooony Hors ligne
Bonjour,

J'ai un fichier avec beaucoup d'onglet.
Je souhaiterais orienter chaque onglet vers des fichiers déterminés.

Exemple de mon fichier excel, ci dessous les titres de mes onglets:
Onglet1, Onglet2, Onglet3,Feuil1,Feuil2,Feuil3,Paris,Marseille, Pau, Bordeaux

Onglet1, Onglet2, Onglet3 vers C:fichier onglet.xls
Feuil1,Feuil2,Feuil3 vers C:fichier feuil.xls
paris,marseille, pau, bordeaux vers C:fichier ville.xls

Pouvez vous m'orienter, guider, aider?

Merci d'avance
cdt
anthooooony
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jacquouille
Le #24212161
Bonjour
Le plus simple, c'est de faire x copies du fichier.
Dans chaque copie, supprimer les onglets non désirés. (pour sélectionner
plusieurs onglets, CTRL + clic sur onglet)
Ensuite, renommer les fichiers.


Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"anthooooony" a écrit dans le message de groupe de discussion :


Bonjour,

J'ai un fichier avec beaucoup d'onglet.
Je souhaiterais orienter chaque onglet vers des fichiers déterminés.

Exemple de mon fichier excel, ci dessous les titres de mes onglets:
Onglet1, Onglet2, Onglet3,Feuil1,Feuil2,Feuil3,Paris,Marseille, Pau,
Bordeaux

Onglet1, Onglet2, Onglet3 vers C:fichier onglet.xls
Feuil1,Feuil2,Feuil3 vers C:fichier feuil.xls
paris,marseille, pau, bordeaux vers C:fichier ville.xls

Pouvez vous m'orienter, guider, aider?

Merci d'avance
cdt
anthooooony
MichD
Le #24212231
Bonjour,

En VBA,

La procédure copie les onglets vers un nouveau classeur que tu enregistres dans le chemin avec le nom que tu as désigné pour
chacun des groupes.

'-----------------------------------------
Sub test()

Sheets(Array("Onglet1","Onglet2","Onglet3")).copy
activeworkbook.saveAs "C:fichier onglet.xls"
ActiveWorkbook.Close False

Sheets(Array("Feuil1","Feuil2","Feuil3")).copy
ActiveWorkbook.SaveAs "C:fichier feuil.xls"
ActiveWorkbook.Close False

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

MichD
------------------------------------------
"Jacquouille" a écrit dans le message de groupe de discussion : 4f294336$0$5044$

Bonjour
Le plus simple, c'est de faire x copies du fichier.
Dans chaque copie, supprimer les onglets non désirés. (pour sélectionner
plusieurs onglets, CTRL + clic sur onglet)
Ensuite, renommer les fichiers.


Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"anthooooony" a écrit dans le message de groupe de discussion :


Bonjour,

J'ai un fichier avec beaucoup d'onglet.
Je souhaiterais orienter chaque onglet vers des fichiers déterminés.

Exemple de mon fichier excel, ci dessous les titres de mes onglets:
Onglet1, Onglet2, Onglet3,Feuil1,Feuil2,Feuil3,Paris,Marseille, Pau,
Bordeaux

Onglet1, Onglet2, Onglet3 vers C:fichier onglet.xls
Feuil1,Feuil2,Feuil3 vers C:fichier feuil.xls
paris,marseille, pau, bordeaux vers C:fichier ville.xls

Pouvez vous m'orienter, guider, aider?

Merci d'avance
cdt
anthooooony
anthooooony Hors ligne
Le #24212171
anthooooony a écrit le 01/02/2012 à 14h00 :
Bonjour,

J'ai un fichier avec beaucoup d'onglet.
Je souhaiterais orienter chaque onglet vers des fichiers
déterminés.

Exemple de mon fichier excel, ci dessous les titres de mes onglets:
Onglet1, Onglet2, Onglet3,Feuil1,Feuil2,Feuil3,Paris,Marseille, Pau, Bordeaux

Onglet1, Onglet2, Onglet3 vers C:fichier onglet.xls
Feuil1,Feuil2,Feuil3 vers C:fichier feuil.xls
paris,marseille, pau, bordeaux vers C:fichier ville.xls

Pouvez vous m'orienter, guider, aider?

Merci d'avance
cdt
anthooooony


Bonjour Jacquouille,

Je sais que je peux le faire manuellement.
Mais j'espere pouvoir l'automatiser car j'ai 100 onglets à rediriger vers 30 fichiers.
Ce qui voudrait dire démultiplier 30 fois le doc, et à la main enlever a chaque fois les onglets que je dois ne pas laisser apparaitre.
C'est long et source d'erreur pour quelqu'un détourdi comme moi !
Jacquouille
Le #24212311
Bonjour

Ma solution (issue de chez Brico) se veut pour les simples, comme moi.
Denis vient de te donner une solution d'expert.
Tu as le choix, mais entre tes deux msg, il y a une paire d'heures.....qui
auraient suffi.
chacun son choix. -))
Bonne fin de journée.



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"anthooooony" a écrit dans le message de groupe de discussion :


anthooooony a écrit le 01/02/2012 à 14h00 :
Bonjour,

J'ai un fichier avec beaucoup d'onglet.
Je souhaiterais orienter chaque onglet vers des fichiers
déterminés.

Exemple de mon fichier excel, ci dessous les titres de mes onglets:
Onglet1, Onglet2, Onglet3,Feuil1,Feuil2,Feuil3,Paris,Marseille, Pau,


Bordeaux

Onglet1, Onglet2, Onglet3 vers C:fichier onglet.xls
Feuil1,Feuil2,Feuil3 vers C:fichier feuil.xls
paris,marseille, pau, bordeaux vers C:fichier ville.xls

Pouvez vous m'orienter, guider, aider?

Merci d'avance
cdt
anthooooony


Bonjour Jacquouille,

Je sais que je peux le faire manuellement.
Mais j'espere pouvoir l'automatiser car j'ai 100 onglets à rediriger vers 30
fichiers.
Ce qui voudrait dire démultiplier 30 fois le doc, et à la main enlever a
chaque
fois les onglets que je dois ne pas laisser apparaitre.
C'est long et source d'erreur pour quelqu'un détourdi comme moi !
MichD
Le #24212631
Une autre approche :

Tri des feuilles à copier selon les 3 premières lettres du nom de leur onglet.
Tu peux ajouter autant de "Case" que tu désires...

Exemple : FEU , ONG , TAB
'-----------------------------------------
Sub test()
Dim T(), S(), P()
Dim B As Integer, A As Integer
Dim C As Integer, D As Integer

For A = 1 To Sheets.Count
Nom = Sheets(A).Name
Select Case UCase(Left(Trim(Nom), 3))
Case Is = "FEU"
B = B + 1
ReDim Preserve T(1 To B)
T(B) = Nom

Case Is = "ONG"
C = C + 1
ReDim Preserve S(1 To C)
S(C) = Nom

Case Is = "TAB"
D = D + 1
ReDim Preserve P(1 To D)
P(D) = Nom
End Select
Next
'-----------------------------------------
On Error Resume Next
Sheets(T).Copy
ActiveWorkbook.SaveAs "c:Feu.xls"
ActiveWorkbook.Close False


Sheets(S).Copy
ActiveWorkbook.SaveAs "c:Ong.xls"
ActiveWorkbook.Close False

Sheets(P).Copy
ActiveWorkbook.SaveAs "c:Tab.xls"
ActiveWorkbook.Close False

End Sub



MichD
------------------------------------------
"anthooooony" a écrit dans le message de groupe de discussion :

anthooooony a écrit le 01/02/2012 à 14h00 :
Bonjour,

J'ai un fichier avec beaucoup d'onglet.
Je souhaiterais orienter chaque onglet vers des fichiers
déterminés.

Exemple de mon fichier excel, ci dessous les titres de mes onglets:
Onglet1, Onglet2, Onglet3,Feuil1,Feuil2,Feuil3,Paris,Marseille, Pau,


Bordeaux

Onglet1, Onglet2, Onglet3 vers C:fichier onglet.xls
Feuil1,Feuil2,Feuil3 vers C:fichier feuil.xls
paris,marseille, pau, bordeaux vers C:fichier ville.xls

Pouvez vous m'orienter, guider, aider?

Merci d'avance
cdt
anthooooony


Bonjour Jacquouille,

Je sais que je peux le faire manuellement.
Mais j'espere pouvoir l'automatiser car j'ai 100 onglets à rediriger vers 30
fichiers.
Ce qui voudrait dire démultiplier 30 fois le doc, et à la main enlever a chaque
fois les onglets que je dois ne pas laisser apparaitre.
C'est long et source d'erreur pour quelqu'un détourdi comme moi !
Publicité
Poster une réponse
Anonyme