J'ai besoin, dans le cadre d'une génération de planning, de créer dynamiquement des boutons que je compte utiliser pour modéliser mes bâtonnets représentants les différentes tâches du planning. Concernant la création, pas de problèmes, seulement voulant offrir la possibilité d'utiliser le drag&drop à l'utilisateur, j'aimerai donc également lui affecter une série d'évènements (MouseUp, MouseDown..). J'ai déjà réussi à le faire sur un Userform, en créant une classe avec un attribut WithEvents et le code de mes évènements, et en plaçant tous mes boutons crées dynamiquement dans les attributs d'objets définit dans ma classe via un tableau définit tel que :
VB:
Dim monTab As MaClasse
'Exemple
monTab(i).maTache = bouton
Seulement, il y'a eu un changement et je développe maintenant directement sur ma feuille Excel et plus sur un UserForm, et là je n'arrive vraiment pas à adapter mon code, même aprés m'être renseigné sur le type Shape, que je ne connaissais pas, je patauge un peu...Le fait que je ne puisse pas déclarer dans ma classe un WithEvents de type Shape me fait bloquer.
Je met en pièce jointe ce que j'ai essayé de faire, sans succès, mon code ajoute seulement un bouton quand on active la Feuil1, la partie évènement est en commentaire, elle déclenche une erreur de compatibilité sinon. Je vous remercie de votre aide et de votre temps, si j'ai manqué de précisions sur un point, n'hésitez pas, si il y'a une autre façon de le faire complètement différente, je suis preneur aussi.
Re : Affecter des évènements à des boutons crées dynamiquement
Bonjour Pierrejean,
Merci pour ta réponse et ton essai, la création de bouton est beaucoup plus simple avec un Bouton, en effet, l'affectation de l'évènement MouseClick également. Cependant pour réaliser les drag&drop, j'ai besoin d'autre évènements, comme MouseMove, par exemple, existerait-il une façon d'affecter aussi ces évènements sur un Bouton?