Bouton bascule sur UserForm

degap05

XLDnaute Impliqué
Bonjour,

J'ai besoin de votre aide, pour améliorer la présentation d'un classeur.
Celui-ci comprend un quinzaine de feuilles, qui sont listées sur un menu de la page d'accueil. J'aimerais s'il était possible, faire apparaître par défaut sur cet UserForm, uniquement les feuilles choisies(A,B,C,D,E,F). La totalité des feuilles apparaîtraient par l'action d'un bouton bascule (installé sur le fichier joint, mais sans code).

Merci de votre aide
 

Pièces jointes

  • EssaiDegap05.zip
    19.9 KB · Affichages: 59

Cousinhub

XLDnaute Barbatruc
Inactif
Re : Bouton bascule sur UserForm

Bonjour,
le problème, avec ton code, c'est que seule l'onglet Accueil est visible, suite à la procédure "Public Sub All_Sheets_Hide()"

Donc, soit tu laisses A, B, C, D, E visibles, ou alors, je ne comprends pas trop ta question....

ce code :

Code:
For i = 1 To Sheets.Count
    If Sheets(i).Visible Then Me.ListBox1.AddItem Sheets(i).Name
Next

te permet de lister les feuilles visibles, mais comme dit plus haut, il n'y en a qu'une....
 

degap05

XLDnaute Impliqué
Re : Bouton bascule sur UserForm

Bonjour et merci bhbh,

Bien que les feuilles soient cachées, elles sont listées dans la fenêtre de l'UserForm ("Menu"). Jusque là est-ce que je suis suffisamment explicite ?

C'est donc dans la fenêtre de l'UserForm ("Menu"), que je souhaite ne voir affichées que les feuilles choisies par défaut, ou bien toutes avec le bouton bascule.

Merci pour ton aide.
 

Cousinhub

XLDnaute Barbatruc
Inactif
Re : Bouton bascule sur UserForm

Re-,
essaie avec ce code :

Code:
Private Sub ToggleButton1_Click()
Dim i As Byte
Me.ListBox1.Clear
Select Case Me.ToggleButton1
    Case False
        For i = 2 To 6
            Me.ListBox1.AddItem Sheets(i).Name
        Next i
    Case True
        For i = 2 To Sheets.Count
            Me.ListBox1.AddItem Sheets(i).Name
        Next i
End Select
End Sub
 

degap05

XLDnaute Impliqué
Re : Bouton bascule sur UserForm

Alors, cela fonctionne, mais presque à l'envers; lorsque j'appelle l'UserForm, toutes les feuilles sont visibles, alors qu'il faudrait que seules celles choisies le soient. Donc l'inverse de ce qui se produit.
 

Cousinhub

XLDnaute Barbatruc
Inactif
Re : Bouton bascule sur UserForm

Re-,

Ici :

Code:
Private Sub UserForm_Initialize()
'pour définir la position de l'userform Menu
    With Me
         .StartUpPosition = 0  'Annule la position centrée
         .Top = 78 'Règle la position  vers le Haut
         .Left = 20 'Règle la position vers la Gauche
    End With
Dim i As Byte
        For i = 2 To 6
            Me.ListBox1.AddItem Sheets(i).Name
        Next i
End Sub

Ce code s'appelle aussi initialisation de l'USF
Regarde bien la boucle de fin, je ne balaie pas toutes les feuilles, mais les 5 premières
 

Discussions similaires

Statistiques des forums

Discussions
314 079
Messages
2 105 475
Membres
109 376
dernier inscrit
padawan88300