Bonjour à tous,
J’ai besoin de votre aide pour un probème tout bête mais qui après beaucoup de recherche sans résultat reste sans réponse.
J’aimerais savoir comment récupérer l’id d’un controles dans un user Form je fait une boucle sur tous les controles présents dans ma feuille et j’ai besoin qu’elle remplissent toutes les checkbox fils correspondant au problème
J’ai 3 checkbox pour chaque ligne et une textbox si l’utilisateur clique sur la checkbox0 et que le textbox0 contient niveau 1 le programme doit selectionner automatiquement toutes les checkbox jusqu'à la prochaine textbox qui contient niveau 1.
J’ai mis en fichier attache le cas idéal que je voudrais retrouver dans mon programme.
Pour mes autres checkbox je fonctionne avec des macro de ce type :
i = 0
For Each ole2 In UserForm1.Controls
If ole2.Value Like "Niveau : _1*" Then
MsgBox (ole2.Value)
y = Split(ole2.Name, "_")
MsgBox (y(1))
For Each ole1 In UserForm1.Controls
'MsgBox (ole1.Name)
If ole1.Name = "CheckBoz" & i Then
MsgBox (ole1.Name)
ole1.Value = True
i = i + 1
If i = y(1) Then
Exit Sub
End If
ElseIf ole1.Value <> ole2.Value And ole1.Value Like "Niveau : _1*" Then
Exit Sub
End If
Next
End If
'Next
'End If
Next
Merci à tous
PS : Cette méthode est présente dans une procédure contenue dans un module de classe qui gére l'evenement quand une checkbox est cliquée :
'Option Explicit
Public WithEvents ChkBx As MSForms.CheckBox
'Exemple pour gérer l'évènement clic sur les objets type CheckBox
Private Sub ChkBx_Click()
J’ai besoin de votre aide pour un probème tout bête mais qui après beaucoup de recherche sans résultat reste sans réponse.
J’aimerais savoir comment récupérer l’id d’un controles dans un user Form je fait une boucle sur tous les controles présents dans ma feuille et j’ai besoin qu’elle remplissent toutes les checkbox fils correspondant au problème
J’ai 3 checkbox pour chaque ligne et une textbox si l’utilisateur clique sur la checkbox0 et que le textbox0 contient niveau 1 le programme doit selectionner automatiquement toutes les checkbox jusqu'à la prochaine textbox qui contient niveau 1.
J’ai mis en fichier attache le cas idéal que je voudrais retrouver dans mon programme.
Pour mes autres checkbox je fonctionne avec des macro de ce type :
i = 0
For Each ole2 In UserForm1.Controls
If ole2.Value Like "Niveau : _1*" Then
MsgBox (ole2.Value)
y = Split(ole2.Name, "_")
MsgBox (y(1))
For Each ole1 In UserForm1.Controls
'MsgBox (ole1.Name)
If ole1.Name = "CheckBoz" & i Then
MsgBox (ole1.Name)
ole1.Value = True
i = i + 1
If i = y(1) Then
Exit Sub
End If
ElseIf ole1.Value <> ole2.Value And ole1.Value Like "Niveau : _1*" Then
Exit Sub
End If
Next
End If
'Next
'End If
Next
Merci à tous
PS : Cette méthode est présente dans une procédure contenue dans un module de classe qui gére l'evenement quand une checkbox est cliquée :
'Option Explicit
Public WithEvents ChkBx As MSForms.CheckBox
'Exemple pour gérer l'évènement clic sur les objets type CheckBox
Private Sub ChkBx_Click()
Pièces jointes
Dernière édition: