Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment désactiver ou activer un bouton selon une certain donnée entrée dans une cellule

4 réponses
Avatar
gmore
Bonjour,

comment un bouton peut être activé ou désactivé automatiquement
lorsqu'on entre une certaine donnée dans une cellule? L'idéal serait
d'avoir une validation sur une case à cocher (exemple une question
quelconque) et ensuite le bouton s'active ou se désactive selon notre
choix.

J'ai fais l'essai de quelques macros, mais sans succès.

Est-ce que quelqu'un pourrait m'indiquer les bonnes étapes en VBA?

Merci!

gmore

4 réponses

Avatar
Philippe.R
Bonsoir gmore,
Tu peux, en début de code de la macro associée au bouton insérer une ligne du type :

if range("verifoption").value<>1 then exit sub
'la suite de ton code

si la cellule nommée verifoption (que tu auras liée à une case à cocher par exemple) n'a pas la valeur
correspondant à l'activation du bouton, la macro commandée par icelui ne sera pas exécutée
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"gmore" a écrit dans le message de
news:
Bonjour,

comment un bouton peut être activé ou désactivé automatiquement
lorsqu'on entre une certaine donnée dans une cellule? L'idéal serait
d'avoir une validation sur une case à cocher (exemple une question
quelconque) et ensuite le bouton s'active ou se désactive selon notre
choix.

J'ai fais l'essai de quelques macros, mais sans succès.

Est-ce que quelqu'un pourrait m'indiquer les bonnes étapes en VBA?

Merci!

gmore


Avatar
Denis Michon
Bonjour gmore,

Si ton bouton de commande provient de la barre d'outils "Contrôle"

Dans la feuille module où l'action se déroule, copie ceci:

Pour les besoins de l'exemple :

ton bouton sera "inerte" si la valeur de la cellule A1 est entre 1 et 5

'---------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
If Target > 1 And Target < 5 Then
Shapes("CommandButton1").OLEFormat.Object.Enabled = False
Else
Shapes("CommandButton1").OLEFormat.Object.Enabled = True
End If

End If
End Sub
'---------------------


Salutations!




"gmore" a écrit dans le message de news:
Bonjour,

comment un bouton peut être activé ou désactivé automatiquement
lorsqu'on entre une certaine donnée dans une cellule? L'idéal serait
d'avoir une validation sur une case à cocher (exemple une question
quelconque) et ensuite le bouton s'active ou se désactive selon notre
choix.

J'ai fais l'essai de quelques macros, mais sans succès.

Est-ce que quelqu'un pourrait m'indiquer les bonnes étapes en VBA?

Merci!

gmore
Avatar
Hervé
Salut gmore,
Si tu veux activer ou non en fonction de la valeur entrée dans une cellule
vois ci dessous, si A1 contient gmore le bouton est actif sinon il ne l'ai
pas. À mettre dans le module de ta feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([A1], Target) Is Nothing Then
Me.CommandButton1.Enabled = Target.Value = "gmore"
End If
End Sub

Si tu veux activer ou non le bouton en fonction de la valeur d'une case à
cocher. À mettre aussi dans le module de ta feuille :

Private Sub CheckBox1_Click()
Me.CommandButton1.Enabled = CheckBox1.Value
End Sub

Les contrôles sont issus de la barre d'outils "Boîte à outils Contrôles"

Hervé.

"gmore" a écrit dans le message news:

Bonjour,

comment un bouton peut être activé ou désactivé automatiquement
lorsqu'on entre une certaine donnée dans une cellule? L'idéal serait
d'avoir une validation sur une case à cocher (exemple une question
quelconque) et ensuite le bouton s'active ou se désactive selon notre
choix.

J'ai fais l'essai de quelques macros, mais sans succès.

Est-ce que quelqu'un pourrait m'indiquer les bonnes étapes en VBA?

Merci!

gmore


Avatar
gmore
Merci à vous deux!

J'ai pris l'option de Denis et ça fonctionne #1.

gmore


"Denis Michon" wrote in message news:<mHekb.3475$...
Bonjour gmore,

Si ton bouton de commande provient de la barre d'outils "Contrôle"

Dans la feuille module où l'action se déroule, copie ceci:

Pour les besoins de l'exemple :

ton bouton sera "inerte" si la valeur de la cellule A1 est entre 1 et 5

'---------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
If Target > 1 And Target < 5 Then
Shapes("CommandButton1").OLEFormat.Object.Enabled = False
Else
Shapes("CommandButton1").OLEFormat.Object.Enabled = True
End If

End If
End Sub
'---------------------


Salutations!




"gmore" a écrit dans le message de news:
Bonjour,

comment un bouton peut être activé ou désactivé automatiquement
lorsqu'on entre une certaine donnée dans une cellule? L'idéal serait
d'avoir une validation sur une case à cocher (exemple une question
quelconque) et ensuite le bouton s'active ou se désactive selon notre
choix.

J'ai fais l'essai de quelques macros, mais sans succès.

Est-ce que quelqu'un pourrait m'indiquer les bonnes étapes en VBA?

Merci!

gmore