Hello,
Après une demi-journée de recherche sur Internet, je sollicite votre aide.
Besoin :
Je souhaite créé dans une feuille excel une checkbox sur un nombre de ligne indéfinie à raison d'une checkbox par ligne dans une colonne bien défini la "G".
Bien sûr, pour la macro associé aux évenement de la checkbox, je souhaite utiliser un module de classe.
Tout ça via une macro, sinon ça serait pas drôle
Problème :
J'ai trouvé comment créé cette checkbox mais je n'arrive pas à rattacher l'événement. à Chaque fois je bute sur une erreur "Type non défini" sur la ligne "Public WithEvents ChkBx As MSForms.CheckBox" se trouvant dans le module de classe.
Structure du code
La création des checkbox est lié à un bouton :
Dans un module de classe appellé "Classe1" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 Option Explicit Public Collect As Collection Sub Bouton_creadashboard_Cliquer() Dim C1 As Classe1 Dim obj As Control Dim i As Integer Dim obj_range_dashboard As Range Set obj_range_dashboard = Worksheets("dashboard_incidents").Range("A2:N100") Set obj = CheckBoxes.Add("forms.Checkbox.1") Do With obj .Name = "chk_bx_" & i .Object.Caption = "" .Left = obj_range_dashboard.Cells(i, 7).Left .Top = obj_range_dashboard.Cells(i, 7).Top .Width = obj_range_dashboard.Cells(i, 7).Width .Height = obj_range_dashboard.Cells(i, 7).Height End With Set C1 = New Classe1 Set C1.ChkBx = obj Collect.Add C1 i = i + 1 Loop Until obj_range_incident.Cells(i + 1, 1) = ""
Avez-vous idée de ce qui provoque cette erreur de type non défini sur MSForms.CheckBox et comment la contourner ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Option Explicit Public WithEvents ChkBx As MSForms.CheckBox Private Sub ChkBx_Click() 'Ici le code de l'évenement click sur checkbox End Sub
J'ai fait différent test mais rien de concluant.
Merci pour votre aide.
Partager