Dans un UserForm, il y a plusieurs CheckBoxes. J'aimerais changer leur
valeur sans les spécifier une par une. Leur nom commence toujours de la même
manière. J'ai essayé comme cela mais cela ne fonctionne pas :
For Each chkObject In Me.Controls
If Left(chkObject.Name, 8) = "chkAdmin" Then
chkObject = False
End If
Next
Je souhaite faire de cette façon car leur nombre risque de changer et je ne
voudrais pas modifier le code à chaque fois.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Patrick
Finalement j'ai fait comme cela :
Dim chkControl As MSForms.Control
For Each chkControl In Me.Controls If Left(chkControl.Name, 8) = "chkAdmin" Then chkControl = False End If Next
-- Patrick
"Patrick" wrote:
Bonjour,
Dans un UserForm, il y a plusieurs CheckBoxes. J'aimerais changer leur valeur sans les spécifier une par une. Leur nom commence toujours de la même manière. J'ai essayé comme cela mais cela ne fonctionne pas :
For Each chkObject In Me.Controls If Left(chkObject.Name, 8) = "chkAdmin" Then chkObject = False End If Next
Je souhaite faire de cette façon car leur nombre risque de changer et je ne voudrais pas modifier le code à chaque fois.
Avez-vous une idée de la manière de procéder ?
Merci.
-- Patrick
Finalement j'ai fait comme cela :
Dim chkControl As MSForms.Control
For Each chkControl In Me.Controls
If Left(chkControl.Name, 8) = "chkAdmin" Then
chkControl = False
End If
Next
--
Patrick
"Patrick" wrote:
Bonjour,
Dans un UserForm, il y a plusieurs CheckBoxes. J'aimerais changer leur
valeur sans les spécifier une par une. Leur nom commence toujours de la même
manière. J'ai essayé comme cela mais cela ne fonctionne pas :
For Each chkObject In Me.Controls
If Left(chkObject.Name, 8) = "chkAdmin" Then
chkObject = False
End If
Next
Je souhaite faire de cette façon car leur nombre risque de changer et je ne
voudrais pas modifier le code à chaque fois.
For Each chkControl In Me.Controls If Left(chkControl.Name, 8) = "chkAdmin" Then chkControl = False End If Next
-- Patrick
"Patrick" wrote:
Bonjour,
Dans un UserForm, il y a plusieurs CheckBoxes. J'aimerais changer leur valeur sans les spécifier une par une. Leur nom commence toujours de la même manière. J'ai essayé comme cela mais cela ne fonctionne pas :
For Each chkObject In Me.Controls If Left(chkObject.Name, 8) = "chkAdmin" Then chkObject = False End If Next
Je souhaite faire de cette façon car leur nombre risque de changer et je ne voudrais pas modifier le code à chaque fois.
Avez-vous une idée de la manière de procéder ?
Merci.
-- Patrick
MichDenis
Cette boucle te libère de la vérification des noms des checkbox
Dim C As Control For Each C In Me.Controls If TypeName(C) = "CheckBox" Then C.Value = False End If Next
"Patrick" a écrit dans le message de news:
Finalement j'ai fait comme cela :
Dim chkControl As MSForms.Control
For Each chkControl In Me.Controls If Left(chkControl.Name, 8) = "chkAdmin" Then chkControl = False End If Next
-- Patrick
"Patrick" wrote:
Bonjour,
Dans un UserForm, il y a plusieurs CheckBoxes. J'aimerais changer leur valeur sans les spécifier une par une. Leur nom commence toujours de la même manière. J'ai essayé comme cela mais cela ne fonctionne pas :
For Each chkObject In Me.Controls If Left(chkObject.Name, 8) = "chkAdmin" Then chkObject = False End If Next
Je souhaite faire de cette façon car leur nombre risque de changer et je ne voudrais pas modifier le code à chaque fois.
Avez-vous une idée de la manière de procéder ?
Merci.
-- Patrick
Cette boucle te libère de la vérification des noms des checkbox
Dim C As Control
For Each C In Me.Controls
If TypeName(C) = "CheckBox" Then
C.Value = False
End If
Next
"Patrick" <no.spam.patrick.fredin@iquebec.com> a écrit dans le message de news:
3EABE81F-0338-4FA6-BD01-5FDB29C94AF7@microsoft.com...
Finalement j'ai fait comme cela :
Dim chkControl As MSForms.Control
For Each chkControl In Me.Controls
If Left(chkControl.Name, 8) = "chkAdmin" Then
chkControl = False
End If
Next
--
Patrick
"Patrick" wrote:
Bonjour,
Dans un UserForm, il y a plusieurs CheckBoxes. J'aimerais changer leur
valeur sans les spécifier une par une. Leur nom commence toujours de la même
manière. J'ai essayé comme cela mais cela ne fonctionne pas :
For Each chkObject In Me.Controls
If Left(chkObject.Name, 8) = "chkAdmin" Then
chkObject = False
End If
Next
Je souhaite faire de cette façon car leur nombre risque de changer et je ne
voudrais pas modifier le code à chaque fois.
Cette boucle te libère de la vérification des noms des checkbox
Dim C As Control For Each C In Me.Controls If TypeName(C) = "CheckBox" Then C.Value = False End If Next
"Patrick" a écrit dans le message de news:
Finalement j'ai fait comme cela :
Dim chkControl As MSForms.Control
For Each chkControl In Me.Controls If Left(chkControl.Name, 8) = "chkAdmin" Then chkControl = False End If Next
-- Patrick
"Patrick" wrote:
Bonjour,
Dans un UserForm, il y a plusieurs CheckBoxes. J'aimerais changer leur valeur sans les spécifier une par une. Leur nom commence toujours de la même manière. J'ai essayé comme cela mais cela ne fonctionne pas :
For Each chkObject In Me.Controls If Left(chkObject.Name, 8) = "chkAdmin" Then chkObject = False End If Next
Je souhaite faire de cette façon car leur nombre risque de changer et je ne voudrais pas modifier le code à chaque fois.