Bonjour à tous,

Je vous sollicite concernant l'ajout de fonctions liées à des macros dans le menu contextuel (clic-droit) d'un classeur Excel.

Mon problème est le suivant : j'ajoute des fonctions dans le menu contextuel lors de l'événement d'ouverture du classeur Excel via VBA. Mon code fonctionne parfaitement sur mon PC (Excel 2010 et Excel 2016) mais ne fonctionne pas sur le PC de mon client sous Excel 2013. Rien ne s'ajoutent pas au menu contextuel...

J'ai vérifié que le classeur de mon client exécute correctement les lignes de code à l'ouverture du classeur en y insérant un msgbox -> on passe bien par la fonction.

S'agit-il d'une option d'Excel empêchant la personnalisation du menu contextuel ?

Je vous mets on code ci-dessous :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
Private Sub Workbook_Open()
 
    Application.CommandBars("Cell").Reset
 
    Dim cBut1 As CommandBarButton
    Dim cBut2 As CommandBarButton
 
 
    Dim MaBarre1 As CommandBar
 
    'on détermine la command bar que l'on veux modifier
    Set MaBarre1 = Application.CommandBars("cell")
 
    'on y ajoute un bouton pour ouvrir la fenetre de calendrier
    Set cBut1 = MaBarre1.Controls.Add(Type:=msoControlButton)
    With cBut1
        .Caption = "Calendrier"    '<-- label du bouton
        .OnAction = "Principal.moncalendrier"    ' appel a sa macro associée
    End With
 
        Set cBut2 = MaBarre1.Controls.Add(Type:=msoControlButton)
    With cBut2
        .Caption = "Valider l'opération"    '<-- label du bouton
        .OnAction = "Principal.valider"    ' appel a sa macro associée
    End With
 
End Sub
Merci d'avance pour votre aide