Copie de feuilles cachées

Xavllo

XLDnaute Nouveau
Bonjour à tous,

J'ai un fichier contenant deux bases de données, une Élève et l'autre MDS, chacune sur une feuille cachée. A l'ouverture de mon fichier Excel, je voudrais faire une copie de ces 2 feuilles cachées pour les archiver. La seule solution que j'ai trouvé est de les rendre visible, les copier puis les recacher. En faisant cela, on a l'impression que les feuilles "clignotent"...

Existe-t-il un façon de copier une feuille cachée sans la rendre visible?

Xav

PS: Voici le code que j'utilise pour la copie:

Private Sub Workbook_Open()
Dim Répertoire As String

Répertoire = "C:\base donnée\stages\Archives\"
Worksheets("Elèves").Visible = True
Sheets(Array("Elèves")).Copy
ActiveWorkbook.SaveAs Filename:=Répertoire & "Base Elèves " & Format(Now, "yyyymmdd_hhmmss") & ".xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
ActiveWorkbook.Close True
Worksheets("Elèves").Visible = False
Worksheets("MDS").Visible = True
Sheets(Array("MDS")).Copy
ActiveWorkbook.SaveAs Filename:=Répertoire & "Base MDS " & Format(Now, "yyyymmdd_hhmmss") & ".xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
ActiveWorkbook.Close True
Worksheets("MDS").Visible = False
End Sub
 

JCGL

XLDnaute Barbatruc
Re : Copie de feuilles cachées

Bonjour à tous,

Essaye en rajoutant le code en bleu dans ton code :

Code:
Private Sub Workbook_Open()
Dim Répertoire As String
[COLOR=blue]Application.ScreenUpdating = False[/COLOR]
 
Répertoire = "C:\base donnée\stages\Archives\"
Worksheets("Elèves").Visible = True
Sheets(Array("Elèves")).Copy
ActiveWorkbook.SaveAs Filename:=Répertoire & "Base Elèves " & Format(Now, "yyyymmdd_hhmmss") & ".xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
ActiveWorkbook.Close True
Worksheets("Elèves").Visible = False
Worksheets("MDS").Visible = True
Sheets(Array("MDS")).Copy
ActiveWorkbook.SaveAs Filename:=Répertoire & "Base MDS " & Format(Now, "yyyymmdd_hhmmss") & ".xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
ActiveWorkbook.Close True
Worksheets("MDS").Visible = False
End Sub

Tu devrais avoir un effet dessins animés moins important

A+
 

job75

XLDnaute Barbatruc
Re : Copie de feuilles cachées

Bonjour,
J'ai peut-être mal compris, mais pourquoi faire des copies ?
Pourquoi pas une macro comme suit :
- Enregistrer le fichier ouvert (fichier1) sous le nouveau nom (fichier2). A noter que si vous voulez enregistrer dans le répertoire du fichier1 vous pouvez utiliser ActiveWorkbook.Path comme répertoire
- Ouvrir le fichier1
- fermer (si vous le souhaitez) le fichier2.
A+
 

Xavllo

XLDnaute Nouveau
Re : Copie de feuilles cachées

Merci JCGL, cela fonction correctement mais j'ai rajouté à la fin application.ScreenUpdating = true pour retrouver le rafraichissement de l'écran. La copie se fait sans l'effet clignotant.

Pour job 75, j'ai un fichier avec 6 feuilles cachées et je ne veux faire la copie que des feuilles Elèves et MDS, les autres ne sont pas à copier (pour éviter de surcharger le dossier archives).

Merci

Xav
 
Dernière édition:

Discussions similaires

Réponses
2
Affichages
751