Cacher des optionbutton en vba excel

Résolu
Bonjour,

j'ai creer un userform avec 12 Optionbutton numérotés de 1 a 12 et suivant le cas je donne un intitulé a 2 minimum jusqu'au 12 maxi optionbutton, mais il arrive que je n'utilise pas tous les optionsbutton, et dans ce cas je voudrais que les non utilisés soient invisible dans mon userform.

si quelqu'un à déjà travaillé la dessus

merci de me donner quelques conseils

4 réponses

  1. Modérateur
    Bonjour,
    Il vous suffit de régler la propriété visible de vos OptionButton, au choix, sur True ou sur False...
    Exemple :
    Au clic dans un checkbox, on affiche les optionbutton 2 et 3 si le checkbox est coché ou non...
    Private Sub CheckBox1_Click()
    If UserForm1.CheckBox1.Value = True Then
        UserForm1.OptionButton2.Visible = False
        UserForm1.OptionButton3.Visible = False
    Else
        UserForm1.OptionButton2.Visible = True
        UserForm1.OptionButton3.Visible = True
    End If
    End Sub
    1. Merci, mais en fait ce qui m'ennuie c'est de pouvoir faire une boucle, et de pouvoir indicer le 1 .... 12 de optionbutton.
      si je n'ai rien dans l'intitulé de optionbutton alors mon optionbutton est invisible
      Afin de minimisé l'écriture.

      merci de ton aide
      1. Modérateur
        Oui bon alors pas de problème pour une boucle, mais qu'entends tu par intitulé?
        Exemple de boucle sur les optionbuttons de l'optionbutton5 à l'optionbutton19 :
        Dim Indic As Byte
        For Indic = 5 To 19
            Me.Controls("OptionButton" & Indic).Visible = True
        Next
    2. Merci,

      Mais en fait je met mes lignes dans mon module et la fonction Me ne fonctionne pas dans un module.

      cela dit je ton astuce interressante

      merci de ton aide
      1. Modérateur
        Si Me ne fonctionne pas, remplace par UserForm...
        UserForm1.Controls("OptionButton" & Indic).Visible = True