CheckBox et Onglets

Bonjour,

Je renouvelle mon expérience ici en posant une nouvelle question.

J'ai un fichier avec plusieurs feuilles. Dans la première, appelée "Menu", j'ai un bouton qui ouvre un UserForm avec des checkbox dedans.

Ces checkbox servent à masquer ou afficher des feuilles, jusque là, ça fonctionne.

si je coche les cases, les feuilles se rendent visible et/ou se masquent.

Mon soucis, c'est que si je ré-ouvre l'UserForm, les checkbox ne sont plus coché malgré le fait que les feuilles soient toujours visible.

Je cherche depuis ce matin, et je n'arrive pas à faire en sorte que la checkbox reste cochée si la feuille est toujours visible...

Ci joint un fichier ultra allégé de mon soucis.

De plus, je cherche à faire en sorte que l'UserForm se mette à jour tout seul si une nouvelle feuille est crée, pour évité d'avoir à rajouter une checkbox à chaque fois.

Merci d'avance de votre aide

70vba-test.xlsm (25.13 Ko)

Bonjour

Essaie avec initialize et vois si c'est ce que tu souhaites

68vba-test.xlsm (26.59 Ko)

Bon week-end

Merci pour ta réponse !!

ça à fonctionné dans le fichier test, jusqu'à ce que je crée une feuille. Puis ça m' fait une erreur et ne veut plus lancer l'UserForm. ni dans le fichier test, ni dans mon vrai fichier

Impossible d'ouvrir l'Userform.

J'ai supprimé l'userform et recrée, le module aussi, mais rien, je n'arrive plus.

pourtant je n'ai pas changé le code

Sub UserForm()

UserForm1.Show

End Sub

Bonjour

Tu avais une erreur que je n'avais pas vue

Remplace déjà tous ces textbox click

Sub CheckBox2_Click()

    If CheckBox2.Value = True Then
        Sheets("feuil3").Visible = True
        Sheets("feuil3").Activate
    Else
        Sheets("Feuil3").Visible = False
        Sheets("feuil3").Activate
   End If

End Sub

Sub CheckBox3_Click()

    If CheckBox3.Value = True Then
        Sheets("feuil4").Visible = True
        Sheets("feuil4").Activate
    Else
        Sheets("Feuil4").Visible = False
        Sheets("feuil4").Activate
   End If

End Sub
Sub CheckBox4_Click()

    If CheckBox4.Value = True Then
        Sheets("feuil5").Visible = True
        Sheets("feuil5").Activate
    Else
        Sheets("Feuil5").Visible = False
        Sheets("feuil5").Activate
   End If

End Sub
Sub CheckBox5_Click()

    If CheckBox5.Value = True Then
        Sheets("feuil6").Visible = True
        Sheets("feuil6").Activate
    Else
        Sheets("Feuil6").Visible = False
        Sheets("feuil6").Activate
   End If

End Sub

Puis ce que j'ai fait dans initialize ne marchera que si tu as aussi créer des checkbox pour tes feuilles supplémentaires ; regarde bien le code

Tiens-moi au courant

Bye

Ok je vais faire ça pour voir, merci encore.

Au passage, il n'y a pas un code pour remplacer tout ce que j'ai fait ?

j'ai 39 feuilles, donc 3ç codes à refaire du coup ...

Bonjour

N'ai plus beaucoup de temps , reprendrai la semaine prochaine

Mais , j'ai eu l'idée d'ajouter un bouton valider et de supprimer les évènements Click, c'est déjà moins surchargé

Par contre j'ai mis en "dur" le nombre de checkbox...à voir plus tard si nécessaire

63vba-test-v1.xlsm (26.18 Ko)

Bon weekend

Salut,

Merci de ton aide, suite à ce que tu as dis de retoucher mon code, j'ai fais appel un ami plus doué que moi. On a réussi à faire la chose en dynamique. ça fonctionne donc très bien.

Mais on se retrouve avec un autre problème... sur les 39 feuilles existante, seulement 26 arrivent dans la checkbox dynamique.

Je joins le fichier test pour te montrer, si tu vois le soucis. Dans mon fichier réel, il y a donc ces 39 feuilles existante, mais que 26 dans la liste, pourtant le code appelle toutes les feuilles normalement.

Merci de ton aide.

Bonjour

Te renvoie le même fichier où j'ai créé 39 feuilles...c'est OK

Revois

Bon week

Super Merci !

Rechercher des sujets similaires à "checkbox onglets"