Bonjour,
Dans Excel 2007, à l'ouverture d'Excel, du code se lance depuis le classeur PERSONNAL.xlsb. Ce code ajoute un menu dans le ruban. A partir de ce menu, je pouvais lancer des routines pour ouvrir des classeurs.
Dans Excel 2010,le nouveau menu se crée correctement, mais lorsque je clique sur un sous menu pour ouvrir un classeur, j'obtiens le message d'erreur suivant:
"Impossible d'executer ma macro PERSONNAL.XLSB.mamacro.Il est possible qu'elle ne soit pas disponible dans ce classeur ou que toutes les macros soient désactivées".
En fait, les macros sont activées puisque le nouveau menu est crée au lancement de l'application. De plus, si je lance directement le code d'ouverture du classeur, il s'ouvre.
Cela vient peut être de la commande ONACTION qui aurait changé ?
Voici le code que j'utilise.
Un grand merci d'avance à ceux qui auront la possibilité de m'éclairer.
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 On Error Resume Next Dim MenuBar_actuelle As CommandBar Set MenuBar_actuelle = Application.CommandBars.ActiveMenuBar Dim MenuTreso As CommandBarPopup Set MenuTreso = MenuBar_actuelle.Controls.Add(Type:=msoControlPopup, Temporary:=True) MenuTreso.Caption = "Treso" ' Ajoute un bouton au menu treso Dim ctrlTreso As CommandBarButton Set ctrlTreso = MenuTreso.Controls.Add(Type:=msoControlButton) With ctrlTreso .Caption = "Treso" .FaceId = 2 .Style = msoButtonCaption .OnAction = "ouvrirClasseur" End With
"ouvrirClasseur" est le nom de la routine qui ouvre le classeur.
Partager