Bonjour
Un fichier aurai été plus apprécié qu'une photo....
Est ce un userform ou une feuille?
si feuille y a t'il une cellule liée?
A+ François
Private Sub CommandButton1_Click()
Dim CTRL As Control
For Each CTRL In Me.Controls
If TypeName(CTRL) = "CheckBox" Then
If CTRL.Value = True Then
Me.ListingTrou.AddItem CTRL.Caption
End If
End If
Next CTRL
End Sub
Bonjour @Tipeu, le Forum
Comme je vois qu'il y a des références à des biblithèques AutoCad, y-a t'il une raison pour que des CheckBoxes soient en "TripleState" ?
La méthode conventionnelle serait (en TripleState False) serait :
VB:Private Sub CommandButton1_Click() Dim CTRL As Control For Each CTRL In Me.Controls If TypeName(CTRL) = "CheckBox" Then If CTRL.Value = True Then Me.ListingTrou.AddItem CTRL.Caption End If End If Next CTRL End Sub
Mais paramétrés en TripleState = True elles ne retournent rien...
Bonne journée
@+Thierry
Private Sub CommandButton1_Click()
Dim CTRL As Control
For Each CTRL In Me.Controls
If TypeName(CTRL) = "CheckBox" Then
CTRL.Value = True
End If
Next CTRL
End Sub
Private Sub CommandButton2_Click()
Dim CTRL As Control
For Each CTRL In Me.Controls
If TypeName(CTRL) = "CheckBox" Then
If CTRL.Value = True Then
Me.ListingTrou.AddItem CTRL.Caption
End If
End If
Next CTRL
End Sub
Re,
En fait si tu essaies à "If CTRL.Value = False Then" , il mettra toutes les CheckBoxes dans la ListBox...
Je ne maitrîse pas vraiment le TripleState, je n'en ai jamais eu besoin... Il faut chercher sur le net...
PS Le Click ne devrait avoir aucune incidence là dedans à mon avis, ce qui compte c'est la Value
Si je fais ceci avec Deux CommandButtons sur ton Userform :
VB:Private Sub CommandButton1_Click() Dim CTRL As Control For Each CTRL In Me.Controls If TypeName(CTRL) = "CheckBox" Then CTRL.Value = True End If Next CTRL End Sub Private Sub CommandButton2_Click() Dim CTRL As Control For Each CTRL In Me.Controls If TypeName(CTRL) = "CheckBox" Then If CTRL.Value = True Then Me.ListingTrou.AddItem CTRL.Caption End If End If Next CTRL End Sub
Celà fonctionne :
Regarde la pièce jointe 1074422
Bon Courage !
@+Thierry
Regarde si tu as ces références manquantes dans Outils => Référence
Regarde la pièce jointe 1074428
Auquel cas décoches-les "MISSING" ...
(A mon avis tu ne dois pas être sur ta machine avec AutoCad)
@+Thierry
Private Sub Trou36_Click()
ListingTrouUpdate
End Sub