Cacher des optionbutton en vba excel

Résolu
ch'duj Messages postés 31 Statut Membre -  
ch'duj Messages postés 31 Statut Membre -
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. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    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
    3
  2. ch'duj Messages postés 31 Statut Membre 2
     
    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
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      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
      0
  3. ch'duj Messages postés 31 Statut Membre 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
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      Si Me ne fonctionne pas, remplace par UserForm...
      UserForm1.Controls("OptionButton" & Indic).Visible = True
      0
  4. ch'duj Messages postés 31 Statut Membre 2
     
    Merci Pijaku

    ca fonctionne comme je le souhaitais

    a+
    0