Vba, déclencher un evenement via le worbook et non par la feuille concernée

Résolu
SERIEUXETCOOL Messages postés 336 Date d'inscription dimanche 3 avril 2011 Statut Membre Dernière intervention 12 juin 2012 - 17 nov. 2011 à 11:38
SERIEUXETCOOL Messages postés 336 Date d'inscription dimanche 3 avril 2011 Statut Membre Dernière intervention 12 juin 2012 - 17 nov. 2011 à 12:22
Re bonjour le Forum,

J'ai de nouveau une question qui me trotte dans la tête.

Dans une feuille Excel j'ai un bouton d'action qui est associé à une macro. Du coup, j'ai le code suivant associé à la feuille ou le bouton d'action est présent :

Private Sub BtnEvalListe_Click()
    multiAbscisses
End Sub


Donc si je clique sur le bouton d'action, la procédure "multiAbscisses" se déclenche. Tout est normal.

Maintenant, je cherche à réaliser la même chose mais avec un code qui serait placé dans le WorkBook cette fois ci. En effet, la feuille ainsi que le bouton d'action ne sont pas présents dans Excel. Ils sont créés via une macro. Donc ça ne peut pas fonctionner si la feuille n'existe pas encore. Donc je ne peux pas placer le code dans la bonne feuille car elle sera justement créée plus tards avec le code. Par contre le Worbook est lui présent dès le début.

C'est pour cela que je cherche à déclencher le bouton d'action via le WoorkBook. Est-ce possible ? Je n'y parviens pas.

Cordialement,

André

1 réponse

SERIEUXETCOOL Messages postés 336 Date d'inscription dimanche 3 avril 2011 Statut Membre Dernière intervention 12 juin 2012 1
17 nov. 2011 à 12:22
Ayé j'ai trouvé une solution à mon problème. Il suffisait de placer le code directement dans la macro et et de gérer le bouton d'action avec le code suivant :


ActiveSheet.Buttons.Add(474.75, 39, 118.5, 33.75).Select
    Selection.OnAction = "multiAbscisses"


Bien cordialement,

André
3
Rejoignez-nous