Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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"
BnAction = "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 BnAction = "Essai()" -> double exécution
Si on met BnAction = "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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…