Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

rendre visible/invisible commandbutton

gilles37

XLDnaute Occasionnel
Bonjour a tous,

je souhaite a l'aide d'un combobox (oui/non) rendre visible :
- un commandbutton1 si "non" choisi et donc commandbutton3 invisible
-un commandbutton3 si "oui"choisi et donc commandbutton1 invisible
dans tous les cas je ne dois voir un seul commandbutton en fonction du choix.
J'arrive seulement a rendre visible un seul commandbutton et il ne disparait pas si choix modifier.
Pouvez-vous m'aider?

Merci pour votre aide.

slt
 

laetitia90

XLDnaute Barbatruc
bonjour gilles , Wolf

en simplifiant un peu !!! avec le fichier de l' ami Wolf

VB:
Private Sub ComboBox1_Click()
CommandButton1.Visible = ComboBox1 = "Oui"
CommandButton3.Visible = ComboBox1 = "Non"
End Sub
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil, le forum (Loup Solitaire, leti )

En espérant qu'il s'agisse bien d'un userform
(ce que n'a pas précisé le demandeur...)

Donc comme j'ai pondu, je poste (même si je préfère le code limpide de leti )
VB:
Private Sub ComboBox1_Change()
CommandButton1.Visible = IIf(ComboBox1.Value = "NON", True, False)
CommandButton3.Visible = IIf(ComboBox1.Value = "OUI", True, False)
End Sub
Private Sub UserForm_Initialize()
ComboBox1.List = Array("OUI", "NON")
CommandButton1.Visible = False
CommandButton3.Visible = False
End Sub
 

gilles37

XLDnaute Occasionnel
Bonjour Lone-wolf, Laétitia90, le forum

Merci pour votre aide, j'ai omis de vous dire que cela est sur un userform.
J'applique la formule pour l'userform mais cela ne fonctionne pas


merci
 

Si...

XLDnaute Barbatruc
Bon_soir

Sans If et encore moins de IIf

Je ne le dirai jamais assez : utiliser les propriétés des contrôles permet de s'éviter des lignes de programmation.

Quand il y en a peu cela peut s'avérer superflu mais c'est une bonne habitude que l'on n'acquiert pas pour les autres cas (les plus nombreux !) .

Les boutons étant initialisés avec Visible à False , ici, ce code peut suffire

VB:
 Private Sub UserForm_Initialize()
  ComboBox1.List = Array("OUI", "NON")
End Sub

Private Sub Combobox1_Change()
  CommandButton1.Visible = ComboBox1 = "NON"
  CommandButton3.Visible = ComboBox1 = "OUI"
End Sub

Voir le fichier joint avec un autre raccourci (CheckBox plus court que OptionButton ).
 

Pièces jointes

  • Bouton(s)Visible(e)ou pas.xlsm
    23.9 KB · Affichages: 35

Discussions similaires

Réponses
15
Affichages
489
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…