Changement Format (.Value & .Enabled) suivant la valeur d'une CheckBox dépendant de i
Bonjour
Voici ma subroutine :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
Private Sub UserForm_Activate()
Dim Nbseq As Integer, m As Integer
Nbseq = calculernbseq()
For m = 1 To Nbseq
Controls("OptionButtonTd" & m).Value = Not Controls("CheckboxCas" & m).Value
Controls("OptionButtonTrTnd" & m).Value = Not Controls("CheckboxCas" & m).Value
Controls("OptionButtonTd" & m).Enabled = Not Controls("CheckboxCas" & m).Value
Controls("OptionButtonTrTnd" & m).Enabled = Not Controls("CheckboxCas" & m).Value
Next
End Sub |
Lorsque je lance le code, rien ne se passe pour cette partie codée.
Tous les objets sont créés de cette manière :
Code:
1 2 3 4 5 6 7 8 9 10 11
| Set Obj = UserForm3.Controls.Add("forms.checkbox.1")
With Obj
.Name = "CheckboxCas" & i
.Left = 38 'position par rapport au rebord gauche de l'UserForm
.Top = 27 * i + 37 + decalver 'position par rapport au haut de l'UserForm
.Width = 35 'largeur de la zone d'écriture
.Height = 10 'hauteur de la zone d'écriture
.Value = False
.Visible = True
.Font.Size = 8
End With |
i correspond à m dans l'autre partie du code (cette juste qu'il est dans une subroutine différente)
Mon souhait est qu'a l'activation de la Userform :
- Les CheckBoxCas (1 à Nbseq) est la valeur False
- Les 2 OptionButton (Td/TrTnd) (1 à Nbseq) est la valeur False et Enabled
Cette partie c'est bon avec la valeur du .Value et .Enabled à la creation des Objets
Ensuite ça se complique pour moi :
Lorsque la Userform est activité, je souhaiterais que lorsque l'on coche le CheckBoxCas & m les 2 OptionButton (du même m) se dé-Enabled (passe de True à False) et qu'un des deux OptionButton (Td par Exemple) passe de valeur False à True.
J'avais déjà fais appelle à votre aide pour un problème similaire mais ici, c'est plus compliqué. Je ne peux pas double cliquer sur l'objet et écrire un code associé (Private Sub CheckBoxCas_Click() par exemple) car ils ne sont pas présent dans la UserForm car ils sont générés au lancement du code.
J'espère avoir été assez explicite, si vous avez besoin de plus de précision dites le moi :)
Cordialement