Bonjour,
mon mari m'a initié à la VBA pour que je crée avec des userform, un questionnaire que les parents de mes futurs patients doivent remplir.
J'ai une problématique que mon mari ne trouve pas de solution.
Sur une des userform, j'ai reproduit un questionnaire où il faut donner une seule réponse sur 5 pour chaque question.
Je vous mets une capture d'écran d'une partie du questionnaire, ça sera plus facile à comprendre
J'avais trouvé je ne sais plus où, un code pour qu'un seul choix est possible parmi les 5.
Private Sub onlyOneChkB(Selectedchkb As String)
Dim cCont As Control
If Me.Controls(Selectedchkb).Value = True Then
For Each cCont In Me.Controls
If TypeName(cCont) = "CheckBox" Then
If cCont.Name <> Selectedchkb Then
cCont.Value = False
End If
End If
Next cCont
End If
End Sub
Et pour chaque checkbox, je devais rajouter ce code:
onlyOneChkB (Me.CheckBox1.Name)
Ca marche super bien pour la première ligne.
Mais lorsque je passe à la ligne suivante, le choix fait lors de la première ligne disparait.
J'avais pensé à utiliser des optionbutton mais j'ai la même problématique lorsque je passe à la ligne suivante.
Y a-t-il un code comme celui noté ci-dessus, que je peux mettre pour chaque ligne?
J'en profite pour poser une autre question, je voulais que mes checkbox soient encadrés.
J'ai mis des label devant mais à cause de ces derniers, on ne peut pas cocher les checkbox.
Y a-t-il la possibilité de mettre le label en arrière pour pouvoir avoir la bordure sans que ça empêche de cliquer sur le checkbox?
A moins qu'il y ai une autre possibilité de créer des lignes en vue de créer un tableau.
En vous remerciant pour votre aide.