XL 2016 Activer / Désactiver bouton

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Bandoulier

XLDnaute Junior
Bonjour,

Dans une feuille Excel (attention, pas un UserForm) j'ai un bouton qui lance une macro quand on clique dessus. Par défaut donc, ce bouton est actif. Parfois, j'ai besoin d’accéder à cette feuille, mais que le bouton ne soit pas actif.
Toute l'aide que j'ai pu trouver sur le net ne concerne que les boutons qui sont dans des UserForm ... ce qui n'est pas mon cas (mon bouton est dans une simple feuille de calcul). En fait il faudrait que j'accède aux propriétés de ce bouton, mais où les trouver ?
Merci d'avance à tous ceux qui pourront m'aider.
 
Bonsoir le fil

Un solution radicale
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Shapes("Button 1").Visible = Target.Address = "$A$1"
End Sub

Bonjour JM,
Merci de t'être intéressé à mon cas.
J'avoue ne pas comprendre ta solution : Où dois-je mettre cette procédure ? Que vient faire la cellule A1 dans cette procédure ?
Merci d'avance
 
Bonjour le fil, Bandoulier

Bah, quand le demandeur ne joint pas de fichier exemple, je teste sur mon fichier exemple...🙄

Le code (pour test) est à mettre dans le code d'une feuille (donc pas dans un module standard) sur laquelle se trouvera un bouton (Contrôle formulaire)
Une solution plus pérenne serait l'emploi d'un CommandButton (ActiveX) à la place du bouton.
 
Re

Donc toujours sur mon fichier de Test
(avec cette-fois-ci un CommandButton)
Dans le code de feuille où se trouve le CommandButton
VB:
Private Sub Worksheet_Activate()
CommandButton1.Enabled = False
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
CommandButton1.Enabled = Target.Address = CommandButton1.TopLeftCell.Address
End Sub
NB: Pour tester, il faut que la feuille comporte plus d'une feuille.
PS: Pour réactiver, le code (dans un 1er temps) seul celui qui a écrit le code VBA saura quoi faire 😉
 
Bonjour le fil, Bandoulier

Bah, quand le demandeur ne joint pas de fichier exemple, je teste sur mon fichier exemple...🙄

Le code (pour test) est à mettre dans le code d'une feuille (donc pas dans un module standard) sur laquelle se trouvera un bouton (Contrôle formulaire)
Une solution plus pérenne serait l'emploi d'un CommandButton (ActiveX) à la place du bouton.
Bonjour JM,
Grâce à toi j'ai trouvé !
Dans ma macro, je mets simplement une partie de ce que tu m'as donné :
ActiveSheet.Shapes("Button 1").Visible = True ou False suivant le cas
Et ça marche
Merci, merci, merci !
 
Bonjour le fil, Bandoulier

•>Bandoulier
Il n'y a d'obligation à signaler un fil comme étant résolu.
Personnellement, je pense qu'une question n'est jamais vraiment résolue 😉
Il y aura toujours N solutions à une question "excelienne" 😉

PS: Si vraiment, tu veux indiquer Résolu, voir la discussion idoine dans le Salon d'XLD.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
XL 2019 User Form
Réponses
9
Affichages
320
  • Question Question
Microsoft 365 affichage userform
Réponses
4
Affichages
365
Réponses
10
Affichages
351
Réponses
17
Affichages
812
Réponses
3
Affichages
611
Réponses
16
Affichages
956
Réponses
3
Affichages
890
Retour