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

erreur de création de menu perso et chargement du personnal.xlb

gosselien

XLDnaute Barbatruc
Bonjour à tous,

j'ai du faire une connerie et à présent mon menu perso en XL2007 se plante et ensuite mon personnal.xlsb qui est bien dans le répertoire XLSTART à partir duquel le menu se créait ne se charge plus...sauf si je double clique dessus.

Je mets ici le début (une macro dans le menu, il y en a 10 normalement) de la création qui fonctionnait pourtant depuis 2005 !

Le message d'erreur est : "la méthode 'onaction de l'objet _ commandbarbutton a échoué"

Merci de votre aide

Sub CreationMenu() '2005
Dim Monmenu As CommandBarControl
Dim Ajout As CommandBarPopup ' , Monmenu As CommandBar
Dim MenuItem As CommandBarControl


'Dim SubMenuItem As CommandBarPopup


'Efface le menu s'il existe encore
'voici la liste des id:
'fichier:30002 'Édition:30003 'Affichage:30004 'Insertion:30005
'format:30006 'Outils:30007 'Données:30011 'Graphiques:30022
'Fenêtre:30009 'Aide: 30010
'Permet d'identifier où on ajoute un élément à la barre de menu
'Le menu Aide étant toujours le dernier par convention...


'Set MonMenu = CommandBars(1).FindControl(ID:=30010)


DeleteNouveauMenu ' effacer avant de recrééer

Set Monmenu = Application.CommandBars(1).FindControl(ID:=30010)


If Monmenu Is Nothing Then
' Add the menu to the end
Set Ajout = CommandBars(1).Controls.Add(Type:=msoControlPopup, Temporary:=True)
Else
' Add the menu before Help
Set Ajout = CommandBars(1).Controls.Add(Type:=msoControlPopup, before:=Monmenu.Index, Temporary:=True)
End If


' ajoute l'étiquette au menu
Dim Auteur As String
Auteur = "Menu personnel" 'plus complet ( 02/2015 )
Ajout.Caption = Auteur
' Premier ITEM du MENU
Set MenuItem = Ajout.Controls.Add(Type:=msoControlButton)
With MenuItem
.Caption = "Propriétes du document"
.FaceId = 162 'icône à côté du texte de commande
.OnAction = "Prop" 'Nom de la macro - qui existe bien sur
End With
end sub


Sub DeleteNouveauMenu()
On Error Resume Next
Dim Auteur As String, Caption
Auteur = "Menu personnel"
Caption = Auteur
CommandBars(1).Controls(Auteur).Delete
End Sub
 

Discussions similaires

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