Code vba dans Excel

Résolu
Bonjour,

Bonjour à vous tous,
J'ai fait beaucoup de recherche mais rien de concluent sur une macro que je veux faire.
Je cherche à copier avec savecopyas une nouvelle copie mais en cachant 2 onglet avant de le sauvegarder.
Voici le code, si quelqu'un peux m'aider svp.

Sub Archiver()
Dim chemin As String, nomfichier As String
Application.ScreenUpdating = False
extension = ".xls"
chemin = "H:\Tempo\Horaire de travail\ "
Worksheets(12).Visible = False
Worksheets(13).Visible = False
ActiveWorkbook.SaveCopyAs chemin & Range("C1") & " " & Range("d1") & extension
End Sub

Mais malheureusement ca ne fonctionne pas le fichier s'enregistre correctement mais les 2 onglets reste visible.

Merci pour votre aide ou suggestions

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    essaies avec

    Worksheets(12).Visible = xlSheetHidden
    ou
    Worksheets(12).Visible = 0
    1. Bonjour,

      Merci pour la réponse oui ca fonctionne si je cache la Worksheets(13) mais ces quand j'essaie de cacher la Worksheets(12) qu'il me cause problème à cause que ces cette feuille qui exécute la macro je crois.

      Avez vous une solution, car mon code macro est dans le module2.

      merci.
      1. Contributeur
        pas rop compris ta réponse...
        si c'est C1 et D1 qui sont dans le sheets(12)
        tu crées de variable avant de cacher les feuilles
        xxx=range("C1")
        yyy=range("D1")

        et dans la sauvegarde
        ActiveWorkbook.SaveCopyAs chemin & xxx & " " & yyy & extension
    2. Merci beaucoup pour votre aide ca fonctionne très bien avec les variables avant.

      Je commence en VBA et un conseil est très apprécié

      Encore une fois merci.