Code vba dans Excel

Résolu
Fernand -  
 Fernand -
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

  1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    essaies avec

    Worksheets(12).Visible = xlSheetHidden
    ou
    Worksheets(12).Visible = 0
    0
  2. Fernand
     
    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.
    0
    1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      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
      0
  3. Fernand
     
    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.
    0