Création UserForm un peu sophistiqué
Nastinho
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
Nastinho Messages postés 9 Date d'inscription Statut Membre Dernière intervention -
Nastinho Messages postés 9 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'ai réussi à créer un UserForm où j'ai deux OptionButton, dont l'un contient aussi 5 CheckBox (cf. image). Ce que je veux (mais que je n'arrive pas à obtenir):
1. Si on choisit le premier OptionButton et le premier CheckBox, par exemple, on m'affiche la feuille XXX et Synthesis B.
2. Si on choisit le premier OptionButton et le 2ème Checkbox, on m'affiche la feuille YYY et Synthesis E.
3. Si on choisit le 2ème OptionButton, on fait en sorte que ce soit impossible de cocher alors les cases des Checkbox du 1er optionbutton.
Ci-dessous le code que j'ai fait:
J'espère avoir été claire.
Merci par avance.
J'ai réussi à créer un UserForm où j'ai deux OptionButton, dont l'un contient aussi 5 CheckBox (cf. image). Ce que je veux (mais que je n'arrive pas à obtenir):
1. Si on choisit le premier OptionButton et le premier CheckBox, par exemple, on m'affiche la feuille XXX et Synthesis B.
2. Si on choisit le premier OptionButton et le 2ème Checkbox, on m'affiche la feuille YYY et Synthesis E.
3. Si on choisit le 2ème OptionButton, on fait en sorte que ce soit impossible de cocher alors les cases des Checkbox du 1er optionbutton.
Ci-dessous le code que j'ai fait:
Sub CommandButton1_Click() If OptionButton1.Enabled = True And CheckBox1.Enabled = True And CommandButton1.Enabled = True Then Unload Welcome Worksheets("XXX").Visible = True And Worksheets("SYNTHESIS B").Visible = True ElseIf OptionButton1.Enabled = True And CheckBox2.Enabled = True And CommandButton1.Enabled = True Then Unload Welcome Worksheets("YYY).Visible = True And Worksheets("SYNTHESIS B").Visible = True ElseIf OptionButton1.Enabled = True And CheckBox3.Enabled = True And CommandButton1.Enabled = True Then Unload Welcome Worksheets("ZZZ").Visible = True And Worksheets("SYNTHESIS E").Visible = True ElseIf OptionButton1.Enabled = True And CheckBox4.Enabled = True And CommandButton1.Enabled = True Then Unload Welcome Worksheets("NNN").Visible = True And Worksheets("SYNTHESIS E").Visible = True ElseIf OptionButton1.Enabled = True And CheckBox5.Enabled = True And CommandButton1.Enabled = True Then Unload Welcome Worksheets("VVV").Visible = True And Worksheets("SYNTHESIS HF").Visible = True ElseIf OptionButton2.Enabled = True And CommandButton1.Enabled = True Then Unload Welcome Application.Run "Auto_Open1" ElseIf CommandButton2.Enabled = True Then Application.Quit End If End Sub
J'espère avoir été claire.
Merci par avance.

A voir également:
- Création UserForm un peu sophistiqué
- Creation compte gmail - Guide
- Création site web - Guide
- Création d'un compte google - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Creation compte vinted - Guide
7 réponses
Bonjour,
Le plus simple mettre tes Checkbox dans une Frame
Voici le code
Le plus simple mettre tes Checkbox dans une Frame
Voici le code
Private Sub OptionButton1_Click() Frame1.Visible = True End Sub Private Sub OptionButton2_Click() Frame1.Visible = False 'code pour rendre les feuilles Visible = False End Sub
Cela ne change en rien le code des Checkbox . Mais je pense que le choix de Checkbox n'est pas judicieux. Quand on sait que l'on peut checker tous les Checkbox, où sera le choix? L'OptionButton est conseillé. Tu les mets dans une Frame à la place des Checkbox. Tu laisses tes OptionButton1 et 2 en dehors de la frame.
Quand je vois cela:
If OptionButton1.Enabled = True And CheckBox1.Enabled = True And CommandButton1.Enabled = True Then
A quoi sert:
CommandButton1.Enabled = True
il est déjà à True puisque tu as cliqué dessus
Il y a pas mal de code a corriger!
Bon courage
Quand je vois cela:
If OptionButton1.Enabled = True And CheckBox1.Enabled = True And CommandButton1.Enabled = True Then
A quoi sert:
CommandButton1.Enabled = True
il est déjà à True puisque tu as cliqué dessus
Il y a pas mal de code a corriger!
Bon courage
Pour lancer l'UserForm à l'ouverture du classeur aller dans ThisWorkBook en haut à gauche et mettre ce code:
Dans le classeur que j'ai posté la frame n'est pas visible!
Private Sub Workbook_Open() UserForm1.Show End Sub
Dans le classeur que j'ai posté la frame n'est pas visible!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Tu mets dans :
comme dans l'exemple que je t'ai mis sur cjoint
Private Sub UserForm_Initialize() Frame1.Visible = False InvisibleTouteFeuille End sub
comme dans l'exemple que je t'ai mis sur cjoint
J'y arrive pas ....
Pourriez-vous regarder le fichier svp?
Lien: https://www.cjoint.com/?3CrxkVDXjNo
Pourriez-vous regarder le fichier svp?
Lien: https://www.cjoint.com/?3CrxkVDXjNo
Cela fonctionne très bien. L'UserForm s'ouvre à l'ouverture. Je ne sais pas ce que tu cherche à faire!
Merci bcp, j'essaierai ça!
Cdt.
Merci bcp.