[VBA] Test sur checkbox incrémentées

Résolu/Fermé
Jadeus08 Messages postés 75 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 21 juin 2012 - 5 mai 2011 à 10:26
Jadeus08 Messages postés 75 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 21 juin 2012 - 5 mai 2011 à 15:15
Bonjour,

J'ai fais une petite macro qui insère une checkbox sur certaines lignes non vide qui se remplissent à partir d'une autre macro (et dont la valeur est variable). Lorsqu'elles sont créer, ces checkbox porte le nom "CB" + le numéro de la ligne où elles sont insérées.

Maintenant, j'aimerai pouvoir tester si la checkbox de la ligne X est cochée, puis le faire avec la ligne X + 1, jusqu'à ce qu'il atteigne la dernière checkbox. Comment puis-je lui indiquer le nom de la checkbox alors que celle-ci contient une variable (qui est la ligne où se trouve la checkbox) ? :x

Je suis sous Excel2000

Merci de vos réponses.

A voir également:

1 réponse

michel_m Messages postés 16602 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 313
5 mai 2011 à 14:21
bonjour

si tes cases à cocher son issues de la boite à outils controles

Sub boucler_cases_à_cocher()
'd'après Michel_XLD
Dim Obj As OLEObject
    
    For Each Obj In ActiveSheet.OLEObjects
        If TypeOf Obj.Object Is MSForms.CheckBox Then _
            MsgBox Obj.Name & ": " & Obj.Object.Value
    Next Obj

End Sub
0
michel_m Messages postés 16602 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 313
5 mai 2011 à 14:27
et si elles sont issues de la barre formulaire

Sub boucler_cases_à_cocher_form()
'd'après Michel_XLD
    Dim Cb As CheckBox
   
    For Each Cb In Feuil1.CheckBoxes
        If Cb.Value = xlOn Then
           MsgBox Cb.Name & " cochée"
        End If
    Next Cb
End Sub
0
Jadeus08 Messages postés 75 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 21 juin 2012 4
5 mai 2011 à 15:15
Merci de ta réponse : la première méthode a marché parfaitement :)
0