Salut a tous
Voila comment j'ai fait mon menu.
En fait pour le creer, je lance la macro AddMenu.
Je souhaitrais donc que cette macro se lance avec l'ouverture du menu, puis se supprime avec sa fermeture si possible. (dans tous les cas, il ne faut pas que 2 menus soient crées puis 3...)
Sub AddMenu()
Dim oMainMenuBar As Object
Dim oNewMenu As Object
Dim oSousMenu As Object
Dim oSousMenu1 As Object
Dim oSousMenu2 As Object
Dim oSousMenu3 As Object
Dim oSousMenu4 As Object
Dim oSousMenu5 As Object
Dim oSousMenu6 As Object
Dim oSousMenu7 As Object
CustomizationContext = 'PERSO.XLA' 'Application.NormalTemplate
Set oMainMenuBar = CommandBars.Item('Worksheet Menu Bar')
Set oNewMenu = oMainMenuBar.Controls.Add(Type:=msoControlPopup)
Set oSousMenu = oNewMenu.Controls.Add(Type:=msoBarTypeMenuBar)
Set oSousMenu1 = oNewMenu.Controls.Add(Type:=msoBarTypeMenuBar)
Set oSousMenu2 = oNewMenu.Controls.Add(Type:=msoBarTypeMenuBar)
Set oSousMenu3 = oNewMenu.Controls.Add(Type:=msoBarTypeMenuBar)
Set oSousMenu4 = oNewMenu.Controls.Add(Type:=msoBarTypeMenuBar)
Set oSousMenu5 = oNewMenu.Controls.Add(Type:=msoBarTypeMenuBar)
Set oSousMenu6 = oNewMenu.Controls.Add(Type:=msoBarTypeMenuBar)
Set oSousMenu7 = oNewMenu.Controls.Add(Type:=msoBarTypeMenuBar)
oNewMenu.Caption = 'macros'
oSousMenu.Caption = Cells(1, 1)
oSousMenu1.Caption = Cells(2, 1)
oSousMenu2.Caption = Cells(3, 1)
oSousMenu3.Caption = Cells(4, 1)
oSousMenu4.Caption = Cells(5, 1)
oSousMenu5.Caption = Cells(6, 1)
oSousMenu6.Caption = Cells(7, 1)
oSousMenu7.Caption = Cells(8, 1)
oSousMenu.OnAction = 'asso1_menu()'
oSousMenu1.OnAction = 'asso2_menu()'
oSousMenu2.OnAction = 'asso3_menu()'
oSousMenu3.OnAction = 'asso4_menu()'
oSousMenu4.OnAction = 'asso5_menu()'
oSousMenu5.OnAction = 'asso6_menu()'
oSousMenu6.OnAction = 'asso7_menu()'
oSousMenu7.OnAction = 'asso8_menu()'
End Sub
Je vous remercie..