J'ai une question sur les boutons d'option d'un USF
Dans mon USF4 j'ai un Frame4 qui lui même à 20 frames avec 2 boutons option.
Les boutons d'option c'est oui ou non et je souhaite savoir:
- combien de bouton oui sont à true et stocker le nombre dans une variable nommée NBJFOFF
- combien de bouton non sont à true et stocker le nombre dans une variable nommée NBJFNOFF
Quelqu'un a-t-il une solution pour faire cela ou dois-je écrire pour chaque bouton
if opptionbuton1.value=true then i=i+1 else i=i
et donc répéter cela pour les 40 boutons?
Ctrl as Control
For each Ctrl in Me.Controls
if TypeOf Ctrl is MSForms.OptionButton Then
if Ctrl.Caption = "oui" And Ctrl.Value = True Then
NBJFOFF = NBJOFF + 1
Elseif Ctrl.Caption = "non" And Ctrl.Value = True Then
NBJFNOFF = NBJFNOFF + 1
End If
End if
Next Ctrl
Je l'ai pas testé donc essaye ça et tiens moi au courant,
bonne journée.
Dim Ctrl As Control
For Each Ctrl In Me.Controls
If TypeOf Ctrl Is MSForms.OptionButton Then
If Ctrl.Caption = "Oui" And Ctrl.Value = True Then
NBJFOFF = NBJFOFF + 1
ElseIf Ctrl.Caption = "Non" And Ctrl.Value = True Then
NBJFNOFF = NBJFNOFF + 1
End If
End If
Next Ctrl
EDIT : J'avais aussi un peu loupé en recopiant les variables, mais avec des noms de variables pareilles...
Même dans d'autre frames, cela ne devrait pas poser de problèmes, est-ce que tu pourrais mettre ton fichier en pièce jointe? En supprimant des données confidentielles si nécessaire? Il faudrait juste ton Userform et le code associé.
bonjour tous
dans ton cas peut etre passer par un module de classe..cela se résume en quelques lignes de code.... si pas de réponse regarderais tout a l'heure
re,
en fin de compte une class... pas forcement utile vu que l'on sait pas bien ce que tu veus faire ???
tu dois valider par un bouton je pense... meme pas sûr ??? sans plus d'infos ???
code commandbutton(x)
Code:
Dim j As Control, x As Byte, y As Byte
For Each j In Controls
If TypeName(j) = "OptionButton" Then
If (j) And j.Caption = "OUI" Then x = x + 1
If (j) And j.Caption = "NON" Then y = y + 1
End If
Next j
NBJFOFF = x: NBJFNOFF = y
code pas simplifier
pour l'ami WUTED TypeName pareil que TypeOf enfin dans certains cas mieux utiliser l'un que l'autre