Naviguer à travers onglets masqués

Bonjour le forum

j'ai une macro que @Jean eric m'a aidé à concevoir qui masque les feuilles de mon classeur et ne montre que la feuille active.

Il y a des bouton qui permettent de faire la navigation.

Mon soucis est celui-ci,

- Lorsque j'intègre la macro qui me sert à importer les feuilles du classeur (Possibilité de faire un choix des feuilles à exporter), j'ai une erreur "Alerte 1004". je me demandais si il était possible de faire en sorte que je n'ai pas cette alerte

- Aussi je voudrais également que le nom de l'onglet actif n'apparaisse plus

je mets en PJ un exemple du fichier

9essais-masque.xlsm (41.46 Ko)

Bonjour,

Pour que la macro marche, il suffit que l'onglet à imprimer soit visible. C'est pourquoi vous pouvez ajouter du texte pour qu'ils s'affichent tous en début de macro et soient tous remasqués en fin de macro :

Private Sub Button1_Click()
Dim Chemin$, Fiche$, NomFiche$
Dim SheetArray() As Variant
Dim I&, Indx&
Dim ws As Worksheet

Application.ScreenUpdating = False          ''''''''''''''''''''''déplacé

For Each ws In ThisWorkbook.Worksheets      ''''''''''''''''''''''ajouté
    ws.Visible = -1                         ''''''''''''''''''''''ajouté
Next ws                                     ''''''''''''''''''''''ajouté

    Chemin = ThisWorkbook.Path & Application.PathSeparator
    Fiche = "TEST.pdf"
Indx = 0
    For I = 0 To ListBox1.ListCount - 1
        If ListBox1.Selected(I) Then
            ReDim Preserve SheetArray(Indx)
            SheetArray(Indx) = ListBox1.List(I)
            Indx = Indx + 1
        End If
    Next I

    If Indx > 0 Then

        Sheets(SheetArray()).Select
        NomFiche = Chemin & Fiche
           ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
              Filename:=NomFiche, _
              Quality:=xlQualityMinimum, _
              IncludeDocProperties:=True, _
              IgnorePrintAreas:=False, _
              OpenAfterPublish:=False
    End If
Erase SheetArray

Feuil1.Select
    Unload Me
Application.Goto [A1], True

ThisWorkbook.Worksheets("Accueil").Visible = -1     ''''''''''''''''''''''ajouté
For Each ws In ThisWorkbook.Worksheets              ''''''''''''''''''''''ajouté
    If ws.Name <> "Accueil" Then ws.Visible = 2     ''''''''''''''''''''''ajouté
Next ws                                             ''''''''''''''''''''''ajouté

Application.ScreenUpdating = True                   ''''''''''''''''''''''ajouté
End Sub

Je vous joins votre fichier.

Cindy

5essais-masque.xlsm (45.16 Ko)

Pour que la macro marche, il suffit que l'onglet à imprimer soit visible. C'est pourquoi vous pouvez ajouter du texte pour qu'ils s'affichent tous en début de macro et soient tous remasqués en fin de macro :

C'est Excellent! Ca marche impec!

Merci vraiement pour cette aide précieuse

Rechercher des sujets similaires à "naviguer travers onglets masques"