XL 2016 VBA - Comment intercepter un évènement sur un Control Active X créé dynamiquement

  • Initiateur de la discussion Initiateur de la discussion Dudu2
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Dudu2

XLDnaute Barbatruc
Bonjour,

Je créé dynamiquement une ComboBox (code ci-dessous)
Je voudrais intercepter un ComboBox_Click().

Faut que je créé un classe ?

VB:
Sub a()
    Dim OLEObj As OLEObject
    Dim ComboBox As msforms.ComboBox
   
    Set OLEObj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.ComboBox.1", Link:=False, _
                                            DisplayAsIcon:=False, Left:=700, Top:=100, Width:=328, Height:=16)
    Set ComboBox = ActiveSheet.ComboBox1
End Sub
 
Solution
Bonsoir.
En tout cas il faut que la ComboBox soit globale et WithEvents dans le module objet qui prend en charge l'évènement. Un module de classe serait utile s'il y en a plusieurs.
Si leurs listes doivent être construite automatiquement d'après différentes colonnes d'un même tableau je vous conseille d'utiliser ma classe ComboBoxLiées, elle s'occupe aussi de toute la gestion des choix, et renvoie à son détenteur le ou les numéros de lignes concernés via des évènements.
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
1 K
M
Réponses
9
Affichages
2 K
Retour