Menu contextuel perso double exécution

MystSith

XLDnaute Nouveau
Bonjour,

J'ai besoin d'intégrer au menu contextuel d'excel (sur l'objet cellule) un bouton personnalisé.
J'arrive bien à avoir le bouton dans le menu, à exécuter la procédure attachée mais le problème est que cette même procédure s'exécute 2 fois.

Voici le code test que j'utilise:

Private Sub Workbook_Open()

Dim Bo As CommandBarButton
Application.CommandBars("Cell").Reset
Set Bo = Application.CommandBars("Cell").Controls.Add(msoControlButton, , , 1, Temporary:=True)

Bo.Caption = "Essai"
Bo_OnAction = "Essai()"

End Sub

Public Sub Essai()

Range("A1").Value = Range("A1").Value + 1

End Sub

Normalement après validation du bouton personnalisé dans le menu contextuel, je devrais avoir la valeur 1 dans la cellule A1 mais ma valeur est égale à 2, ou encore si je remplace ce calcul par l'affichage d'une MsgBox("Ceci est un test"), cette dernière s'affiche 2 fois.

Pourquoi cette double exécution?

Merci d'avance
 

MystSith

XLDnaute Nouveau
Re : Menu contextuel perso double exécution

Voilà :) ... en enlevant les parenthèses dans le .onaction, ça fonctionne.

Si on met Bo_OnAction = "Essai()" -> double exécution
Si on met Bo_OnAction = "Essai" -> simple exécution
On peut également comme tu l'as fait rajouter le nom du module devant, ça fonctionne aussi.

Merci à toi
 

Discussions similaires

Statistiques des forums

Discussions
312 497
Messages
2 088 994
Membres
104 000
dernier inscrit
dinelcia