Copier tout le contenu d'un classeur dans un nouveau classeur vierge.

olivier857 Messages postés 188 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 10 avril 2008 - 20 juin 2005 à 19:03
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 - 21 juin 2005 à 07:23
Slt,

Je cherche le moyen de faire une copie intégrale d emon classeur dans un nouveau classeur vierge. Cela pour faire une archive d emon classeur sous un autre nom (qui sera le nom saisi dans une cellule du classeur d'origine).

Je ne veu pas utiliser le saveas car cette propriété a pour defaut de laisser par le suite le nouveau classeur ouvert et non l'ancien.

J'essaye donc d efaire une copie d etoute mais feuille dans un 2nd classeur mais je n'y arrive pas.

j'ai essayer un truc dans le dtyle: mais ca plante

Sheets(Array("def_puiss", "Feuil1", "Feuil2", "Feuil3", "Feuil4")). Select
Sheets(Array("def_puiss", "Feuil1", "Feuil2", "Feuil3", "Feuil4")). Select

Si quelqu'un a une idée, peut être une boucle for each worksheet ....., mais je n' arrive pas non plus.

Merci d'avance

Olivier

4 réponses

michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
20 juin 2005 à 19:59
bonsoir

tu peux tester la méthode SaveCopyAs pour effectuer une copie

ThisWorkbook.SaveCopyAs "C:\maCopieDeSauvegarde.xls"

bonne soiree
michel
0
olivier857 Messages postés 188 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 10 avril 2008
20 juin 2005 à 23:03
Ok j'essaye de suite



merci
0
olivier857 Messages postés 188 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 10 avril 2008
20 juin 2005 à 23:18
Merci bcp ca marche,



genial cette propriété je ne la connaissai pas et elle fait exactement ce que je cherché.





Autre queqtion est-ce qu'il ya un moyen d'enregistrer une seul feuille
d'un classeur, en supprimantson code VB et c'est formule Excell.



Moi je fait de cette façon mais je sais pas si c'est la meilleur :



Worksheets("devis").Cells.Select feuille que je veu enregistrer

Selection.Copy

Workbooks.Add

nom_classeur = ActiveWorkbook.Name

Workbooks(nom_classeur).Worksheets("Feuil1").Cells.Select

Selection.PasteSpecial Paste:=xlValues

Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

ActiveSheet.Name = "Devis"

Application.DisplayAlerts = False

Worksheets("Feuil2").Delete

Worksheets("Feuil3").Delete

Application.DisplayAlerts = True

Worksheets("Devis").Range("E2").Select

ActiveWorkbook.SaveAs FileName:=chemin2 &
"archives_" & Year(Date) & "" & Range("num_devis") &
".xls"

Workbooks(Range("num_devis") & ".xls").Close , False

Worksheets("Devis").Range("E2").Select



Voilà c'est un peu tordu mais ca marche, je récupaire bien juste ma
feuille Devis, démuni d ec'esrt formile et de son code, mais avec
ca mise en forme.



Merci



Olivier
0
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
21 juin 2005 à 07:23
bonjour Olivier

j'espere que ce lien pourra t'aider

http://frederic.sigonneau.free.fr/code/VBE/CopieFeuilleSansCodeVBA.txt

bonne journée
michel
0
Rejoignez-nous