Retirer un contrôle (macro) du menu contextuel
Le
Blaise

Bonjour,
J'ai ajouté un point au menu contextuel, mais plusieurs fois avant que=
je constate ma bourde.
Et là, je suis bloqué car je n'arrive pas à l'enlever.
la méthode .Remove n'est pas reconnue
Cordialement
(le code d'ajout)
Sub AjouteSwap()
If MsgBox("Es-tu certain de vouloir mettre 'Swap' dans le menu contextu=
el ?", vbYesNo + vbCritical + vbDefaultButton2, "SWAP") <> vbYes Then
Exit Sub
Else
'Ajoute la procédure Swap dans le menu contextuel d'une cellul=
e
Dim Cbut As CommandBarButton
Dim MaBarre As CommandBar
'on détermine la command bar que l'on veux modifier
Set MaBarre = Application.CommandBars("cell")
'on y ajoute un bouton "toto"
Set Cbut = MaBarre.Controls.Add(Type:=msoControlButton)
With Cbut
.FaceId = 1377 'voir la liste sur http://fring.developpe=
z.com/vba/excel/faceid/
.Caption = "Swap" 'label du bouton
.OnAction = "Swap" 'appel à sa macro associée
End With
'==
==
==
End If
End Sub
J'ai ajouté un point au menu contextuel, mais plusieurs fois avant que=
je constate ma bourde.
Et là, je suis bloqué car je n'arrive pas à l'enlever.
la méthode .Remove n'est pas reconnue
Cordialement
(le code d'ajout)
Sub AjouteSwap()
If MsgBox("Es-tu certain de vouloir mettre 'Swap' dans le menu contextu=
el ?", vbYesNo + vbCritical + vbDefaultButton2, "SWAP") <> vbYes Then
Exit Sub
Else
'Ajoute la procédure Swap dans le menu contextuel d'une cellul=
e
Dim Cbut As CommandBarButton
Dim MaBarre As CommandBar
'on détermine la command bar que l'on veux modifier
Set MaBarre = Application.CommandBars("cell")
'on y ajoute un bouton "toto"
Set Cbut = MaBarre.Controls.Add(Type:=msoControlButton)
With Cbut
.FaceId = 1377 'voir la liste sur http://fring.developpe=
z.com/vba/excel/faceid/
.Caption = "Swap" 'label du bouton
.OnAction = "Swap" 'appel à sa macro associée
End With
'==
==
==
End If
End Sub
Pour retrouver le menu contextuel par défaut c'est-à-dire d'enlever toutes les commandes
personnalisées que tu lui as ajoutées, il y a cette ligne de commande :
Application.CommandBars("cell").Reset
Si tu veux faire disparaître seulement la commande "Commande 1" que tu as ajouté au menu
contextuel, il y a ceci :
Application.CommandBars("Cell").Controls("Commande 1").Delete
MichD