Bonsoir le forum,
J'ai un classeur contenant une trentaine d'onglets. Une listbox affichée dans un userform, me permet de sélectionner la feuille que je souhaite afficher (j'ai trouvé l'USF sur le net, mais je ne sais plus sur quel site !!). Dans le classeur, certaines feuilles sont masquées.
Le code de l'USF est le suivant :
Private Sub UserForm_Initialize()
' For i = 1 To Sheets.Count
' Me.ListBox1.AddItem Sheets(i).Name
' Next i
Dim temp()
For i = 1 To Sheets.Count
ReDim Preserve temp(1 To i)
temp(i) = Sheets(i).Name
Next i
n = UBound(temp)
Call Tri(temp, 1, n)
Me.ListBox1.List = temp
End Sub
----------------------------------
Private Sub ListBox1_Click()
m = Me.ListBox1
Sheets(m).Select
End Sub
Mon problème est le suivant. La listbox affiche tous les feuilles présentes dans le classeur, y compris celles qui sont masquées. La sélection dans la listbox d'une feuille masquée provoque par conséquent un plantage de la macro, ce qui est logique.
Ma question, est-il possible d'adapter le code ci-dessus afin que la listbox n'affiche que les feuilles non masquées du classeur ?
Merci par avance de votre aide et cordiales salutations.
J'ai un classeur contenant une trentaine d'onglets. Une listbox affichée dans un userform, me permet de sélectionner la feuille que je souhaite afficher (j'ai trouvé l'USF sur le net, mais je ne sais plus sur quel site !!). Dans le classeur, certaines feuilles sont masquées.
Le code de l'USF est le suivant :
Private Sub UserForm_Initialize()
' For i = 1 To Sheets.Count
' Me.ListBox1.AddItem Sheets(i).Name
' Next i
Dim temp()
For i = 1 To Sheets.Count
ReDim Preserve temp(1 To i)
temp(i) = Sheets(i).Name
Next i
n = UBound(temp)
Call Tri(temp, 1, n)
Me.ListBox1.List = temp
End Sub
----------------------------------
Private Sub ListBox1_Click()
m = Me.ListBox1
Sheets(m).Select
End Sub
Mon problème est le suivant. La listbox affiche tous les feuilles présentes dans le classeur, y compris celles qui sont masquées. La sélection dans la listbox d'une feuille masquée provoque par conséquent un plantage de la macro, ce qui est logique.
Ma question, est-il possible d'adapter le code ci-dessus afin que la listbox n'affiche que les feuilles non masquées du classeur ?
Merci par avance de votre aide et cordiales salutations.