Interroger des options button

  • Initiateur de la discussion Initiateur de la discussion sshikamaru
  • Date de début Date de début

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 !

S

sshikamaru

Guest
Bonjour

je cherche désespérément à interroger des optionbutton en fonction de leurs groupnames dans une feuille excel, mais je n'y arrive pas.
j'ai essayer quelques trucs comme par exemple
Code:
    Dim ctrl As OLEObject
For Each ctrl In ActiveSheet.OLEObjects
    ctrl.Select
     If InStr(1, ctrl.Name, "OptionButton") <> 0 Then
        If ctrl.Object.Value Then
           MsgBox "nom du bouton d option coché " & ctrl.Name
        End If
    End If
Next
mais je ne sais pas comment y ajouter la recherche de groupname.

avez vous une idée ?
 
Re : Interroger des options button

Bonjour sshikamaru,

Plutôt que de te compliquer la vie avec l'utilisation de groupes, souvent ingérables, je te propose d'intégrer tes contrôles dans des Frames. Il suffit de masquer leur cadre et leur titre pour lesn rendre transparents à l'utilisateur. La gestion des contrôles en devient alors beaucoup pls simple.

Voir exemple en pièces jointe, à toi d'adapter à ton usage.

Cordialement.

Edit: salut Bernard & Pierrot.
 

Pièces jointes

Re : Interroger des options button

Re,

ou bien ceci :
Code:
MsgBox Feuil1.OLEObjects("OptionButton1").Object.GroupName

Edition : bonjour Papou🙂
ème édition : Aarf... pas vu Bernard🙂 bonjour également
 
Dernière édition:
Re : Interroger des options button

Merci pour ces réponses.
mais je crois en fait avoir mal posé la question.
Bonjour sshikamaru,

Plutôt que de te compliquer la vie avec l'utilisation de groupes, souvent ingérables, je te propose d'intégrer tes contrôles dans des Frames. Il suffit de masquer leur cadre et leur titre pour lesn rendre transparents à l'utilisateur. La gestion des contrôles en devient alors beaucoup pls simple.
c'est une bonne idée, mais je ne passe pas par des usrform. donc je ne peux pas utiliser cette méthode.

sous 2010, ceci fonctionne :
Code:
MsgBox Feuil1.OptionButton1.GroupName
ou bien ceci :
Code:
MsgBox Feuil1.OLEObjects("OptionButton1").Object.GroupName

c'est pas tout à fait ça parce que la ça me donne le groupe du bouton prédéfini, d'où je pense avoir mal posé la question, et donc je la reformule, avec une explication que j'ai oublié.


en fait j'ai 6 groupes d'option button, qui s'affichent en fonction d'un choix en tête avec d'autres optionbutton (ça, ça marche). ce que je souhaite, c'est de tester les groupes, pour savoir quel option button de tel ou tel groupe est est cochée.

comment je peux interroger les optionbutton en fonction de leur groupe.

exemple, voici les noms des groupes : Type1, Type4, Type7K, Type4210, Type7142, Type7017

et comment lui demandé quel option button du groupe "Type1" est activé" ?
 
Re : Interroger des options button

Vous pouvez aussi commencer par ranger les boutons d'options cochée dans un dictionnaire :
VB:
Dim ctrl As OLEObject, Dic As New Dictionary ' Référence à cocher : Microsoft Scripting Runtime
For Each ctrl In ActiveSheet.OLEObjects
     If TypeName(ctrl.Object) = "OptionButton" Then
        If ctrl.Object.Value Then Dic.Add Key:=ctrl.Object.GroupName, Item:=ctrl.Object
        End If: Next ctrl
Ce qui devrait permettre ensuite de récupérer Dic(NomDUnGroupName).Caption
 
Dernière édition:
Re : Interroger des options button

@Pierrot93 :
en fait, je ne comprends pas comment mettre en oeuvre ton code dans le mien.


@Dranreb:
j'ai activé la référence demandé, mais il me demande objet requis lorsque je fais
Code:
MsgBox Dic("Type4").Caption
 
Re : Interroger des options button

le code
Code:
If ctrl.Object.Value And Ctrl.Object.GroupName = "Type1" Then
il faut que je l'intègre dans le premier code que j'ai essayer de faire ? ou il faut que je l'utilise tout seul ?
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

L
Réponses
0
Affichages
726
L
T
Réponses
2
Affichages
1 K
Tubule
T
D
Réponses
1
Affichages
1 K
S
Réponses
4
Affichages
2 K
stage_ferrit
S
C
Réponses
1
Affichages
1 K
C
A
  • Question Question
Réponses
3
Affichages
1 K
AntoineM
A
P
Réponses
15
Affichages
3 K
Pauliakov
P
Retour