Bonjour,
Comment ajouter une commande dans la liste qui s'affiche sur clic droit dans Excel 2003?
Merci
Version imprimable
Bonjour,
Comment ajouter une commande dans la liste qui s'affiche sur clic droit dans Excel 2003?
Merci
Bonsoir,
un petit coup de google et je suis retombé ici :mouarf:
Comment ajouter une commande au menu contextuel d'une cellule Excel ?
:mouarf:
Merci ca marche
mais apparemment il y a une inversion dans la fonction appelée :
il faut :
au lieu de :Code:MenuCell "AjoutePrefixe", "Ajouter Prefixe"
Autres soucis :Code:MenuCell "Ajouter Prefixe", "AjoutePrefixe"
Ces commandes sont ajoutés à chaque ouverture du classeur ce qui crée des doublons. Comment les enlever quand on le ferme?
Pas possible que ce menu ne s'applique qu'à un seul classeur?
Merci
j'ai trouvé comment supprimer :
Code:Application.CommandBars("Cell").Controls(stMess).Delete
Presque résolu.. une petite question subsidiaire
dans mes tests la commande s'est ajoutée plusieurs fois dans le menu contextuel.
Comment s'assurer que la commande
supprime toutes les occurences si pour une raison ou pour une autre elle venait à s'ajouter plusieurs fois?Code:Application.CommandBars("Cell").Controls(stMess).Delete
Je pensai passer en revue toutes les commandes du menu contextuel mais
ne donne pas le nombre de ces commmandes d'une part etCode:Application.CommandBars("Cell").Controls.Count
n'est pas reconnu (avecCode:Application.CommandBars("Cell").Controls(i).Name
d'autre partCode:i = 1 to Application.CommandBars("Cell").Controls.Count
Merci
Bonsoir,
En fermant ton classeur tu peux restaurer le menu à son état originel:
A l'ouverture tu ajoute ton bouton.Code:Application.CommandBars("Cells").Reset
Cordialement,
Tirex28/
Merci mais si d'autres utilisateurs ont des macro qui ajoute des commandes aux menus contextuels je vais les supprimer aussi, non?
Re,
Dans ce cas tu peux toujours tagger ton bouton pour le retrouver:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Sub AjoutBouton() Dim btn As CommandBarButton Set btn = Application.CommandBars("Cell").Controls.Add(Type:=msoControlButton) With btn .OnAction = "NomProcedure" .Caption = "&Legende" .Tag = "xyz123" End With End Sub Sub EffacerBouton() Dim btn As CommandBarButton Set btn = Application.CommandBars("Cell").FindControl(Tag:="xyz123") btn.Delete End Sub
Cordialement,
Tirex28/
Génère un message d'erreur :Code:Application.CommandBars("Cells").Reset
"Argument ou appel de procédure incorrect"
mais avec
c'est bonCode:Application.CommandBars("Cell").Reset
Merci
Le tag ne supprime qu'une occurence
merci
Re,
Ce qui est normalement suffisant si tu n'en ajoute pas a tour de bras, dans le cas contraire:Citation:
Envoyé par jlgcf
Bonne soirée,Code:
1
2
3
4
5
6
7
8
9 Sub EffacerBoutonS() Dim btn As CommandBarButton On Error GoTo Fin Do Set btn = Application.CommandBars("Cell").FindControl(Tag:="xyz123") btn.Delete Loop Fin: End Sub
Tirex28/
Merci !