[excel][vba] créer un séparateur dans un menu

PhilemonCub Messages postés 2 Statut Membre -  
 Le Pierre -
Bonjour

Je voudrais mettre un séparateur (ligne grisée) dans un menu crée sous vba excel .
L'enregistreur de macro n'enregistre rien lorsque je créer le séparateur à partir de la commande excel "créer un groupe" disponible la personalisation des menus.

Quelqu'un a t'il une idée du code à écrire ?

Merci
Configuration: Windows XP
Opera 9.20

1 réponse

  1. Le Pierre
     
    Voici la soultion que j'ai trouvé (menu contextuel pour une forme Rectangle) :

    Sub Modif_Menu()
    Dim Menu_Contextuel As CommandBar
    Dim NewBtn As CommandBarComboBox
    Dim NewBtn2 As CommandBarControl

    Set Menu_Contextuel = Application.CommandBars("Shapes")
    'trait séparateur
    Menu_Contextuel.Controls.Add(before:=1).BeginGroup = True
    'Ajout menu
    Set NewBtn2 = Menu_Contextuel.Controls.Add(Type:=msoControlButton, before:=1)
    With NewBtn2
    .Caption = "Coller la couleur du rectangle"
    .BeginGroup = True
    .OnAction = "CollerCouleurs"
    End With
    'effacement ligne vide
    Menu_Contextuel.Controls.Item(2).Delete
    End Sub

    Sub Reinit()
    Application.CommandBars("Shapes").Reset
    End Sub
    0