XL 2016 Module de classe

gbinforme

XLDnaute Impliqué
Bonjour à tous,

J'utilise régulièrement des module de classe avec des formulaires ce qui facilite l'utilisation.

Est-t-il possible d'utiliser cette procédure avec des objets sur la feuille, checkbox par exemple ?
 

Hasco

XLDnaute Barbatruc
Repose en paix
Re,

Module de classe :

VB:
Option Explicit

Public WithEvents LeCheckBox As msforms.CheckBox

Private Sub LeCheckBox_Click()
 MsgBox "le checkbox " & LeCheckBox.Name & " a été cliqué et a la valeur " & CStr(LeCheckBox.Value)
End Sub

Dans le module de code de feuille "Feuil1" :

Code:
Option Explicit

Private MesCheckBoxes() As Classe1

Sub initMesCheckBoxes()
    Dim obj
    Dim i As Integer
    Erase MesCheckBoxes
    For Each obj In Me.OLEObjects
        If Left(obj.Name, 8) = "CheckBox" Then
            ReDim Preserve MesCheckBoxes(0 To i)
            Set MesCheckBoxes(i) = New Classe1
            Set MesCheckBoxes(i).LeCheckBox = obj.Object
            i = i + 1
        End If
    Next obj
End Sub

Le test pourrait être :
If TypeOf obj.Object Is MSForms.CheckBox Then
qui est ma préférence

Lancer l'initialisation du groupe MesCheckBox sur l'évènement de feuille qu'on veut (Activate ?) ou par bouton de commande sur la feuille.

Cordialement
 

Pièces jointes

  • Classe checkbox sur feuille.xlsm
    38.5 KB · Affichages: 9
Dernière édition:

gbinforme

XLDnaute Impliqué
re
Merci Hasco j'ai bien vu après ton message et je t'en remercie.

Comme dit dans ma question, je connaissais pour le formulaire mais je voulais simplement savoir si cela fonctionnait aussi sur les objets de la feuille ce que je n'avais vu nulle part.
Merci en tout cas pour ton code.
 

Discussions similaires

Réponses
29
Affichages
918

Statistiques des forums

Discussions
312 198
Messages
2 086 107
Membres
103 120
dernier inscrit
83400ren