Utiliser la value d'un OptionButton ailleurs que dans le Sub
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai un Formulaire dans lequel je coche soit option essentielle, soit option moyenne, soit option toute.
Les trois premières fonctions sont des procédures évênementielles :
-> Public Sub Option_Essentielle_Click()
-> Public Sub Option_Moyenne_Click()
-> Public Sub Option_Toute_Click()
récupèrent ce que l'utilisateur a choisi sous forme de OptionButton. Il coche soit la case essentielle, moyenne ou toute.
Les trois secondes fonctions :
-> Public Function Essentielle() As Boolean
-> Public Function Moyenne() As Boolean
-> Public Function Toute() As Boolean
sont censées récupérer la valeur booléenne des OptionsButtons pour renvoyer la valeur booléenne de l'option qui est à TRUE.
(Je passe par une function parce que je ne peux pas renvoyer de valeur avec une Sub et je suis obligé d'utiliser une Sub pour pouvoir manipuler les OptionButton)
Et la dernière fonction :
-> Public Sub laquelle()
appelle une variante de GenerPerimetreAction(1, 2 ou 3) qui va avoir une action différente en fonction de quelle option est à TRUE.
MON PROBLEME :
Dans les trois secondes fonctions, il ne rentre jamais dans les conditions :
If Me.Option_Essentielle = True Then
Essentielle = True
End If
If Me.Option_Moyenne = True Then
Moyenne = True
End If
If Me.Option_Toute = True Then
Option = True
End If
J'ai l'impression que les OptionsButtons :
-> Me.Option_Essentielle
-> Me.Option_Moyenne
-> Me.Option_Toute
ne sont déclarés que dans les trois premières fonctions et que je ne peux pas les réutiliser dans d'autres fonctions.
Je ne sais pas comment faire, pouvez - vous m'aider ?
Voici le code ci-dessous :
Public Sub Option_Essentielle_Click()
Me.Option_Essentielle = True
Me.Option_Moyenne = False
Me.Option_Toute = False
End Sub
Public Sub Option_Moyenne_Click()
Me.Option_Essentielle = False
Me.Option_Moyenne = True
Me.Option_Toute = False
End Sub
Public Sub Option_Toute_Click()
Me.Option_Essentielle = False
Me.Option_Moyenne = False
Me.Option_Toute = True
End Sub
--------------------------------------------------------------------
Public Function Essentielle() As Boolean
If Me.Option_Essentielle = True Then
Essentielle = True
End If
End Function
Public Function Moyenne() As Boolean
If Me.Option_Moyenne = True Then
Moyenne = True
End If
End Function
Public Function Toute() As Boolean
If Me.Option_Toute = True Then
Toute = True
End If
End Function
--------------------------------------------------------------------
Public Sub laquelle()
If Essentielle = True Then
Call GenerPerimetreActions(1)
End If
If Moyenne = True Then
Call GenerPerimetreActions(2)
End If
If Toute = True Then
Call GenerPerimetreActions(3)
End If
End Sub
- Utiliser la value d'un OptionButton ailleurs que dans le Sub
- Utiliser chromecast - Guide
- Utiliser iphone comme webcam - Guide
- Une personne non-voyante utilise un logiciel qui lit les textes et décrit les images. sans utiliser de logiciel spécifique, trouvez, dans le document, comment s’appelle le chien de la photo. - Forum Handicap / Accessibilté
- Utiliser tablette comme deuxieme ecran - Guide
- Comment utiliser utorrent - Télécharger - Téléchargement & Transfert
2 réponses
les option buttons font-ils partie d'un option group?
peux-tu partager ton fichier?
J'aimerais associer une variante de GenerPerimetreActions pour *, Essentielle ou Moyenne.
Voici ma démarche :
1) Je clique sur zone de liste déroulante :

2) En mode création, je clique sur la zone de liste que j'ai ainsi créé :

3) Je vais sur Propriétés :

4) Je nomme mon "Menu_Deroulant" :

5) Quand j'ai créé mon menu déroulant, je l'ai lié à une table avec les possibilités suivantes :

6) Et voici de quelle table précisément je suis allé le chercher :

7) Et voilà le code que je lui ai attribué :
Public Sub Menu_Deroulant_Click()
If Me.[Sensibilité] = "1-Essentielle" Then
Call GenerPerimetreActions(1)
ElseIf Me.[Sensibilité] = "2-Moyenne" Then
Call GenerPerimetreActions(2)
ElseIf Me.[Sensibilité] = "*" Then
Call GenerPerimetreActions(3)
End If
End Sub
MON PROBLEME : Il ne reconnaît pas sensibilité

Comment modifier le code pour que ça marche ?