Résolu Créer un bouton spécial - Vba Excel

chrisjcs

Habitué
Bonjour,

J'aimerais créer un bouton un peu spécial avec Vba Excel.
Quand on fait un collage avec Excel, en appuyant sur la touche "Ctrl", on a une sorte de menu déroulant qui s'affiche. Quelqu'un connait-il le code pour créer ça?
Je ne veux pas faire de fenêtre du genre MsgBox ou un UserForm, mais bien reprendre l'animation décrite plus haut... Par ailleurs, j'aimerais ajouter une capture d'écran, mais je ne sais pas comment faire...
 

drul

Obscur pro du hardware
Staff
Salut,
Pour les captures d'écrans faut héberger l'image sur un site adéquat (p.ex casimages.com) et coller un lien de type forum BBCode ici.

Pour le bouton qui affiche un pseudo menu contextuel, ça va être difficile je le crains. Ce qui est faisable par contre c'est de rajouter des boutons dans le menu contextuel (click droit)
 

drul

Obscur pro du hardware
Staff
Meilleure réponse
Tu pourrais essayer un truc du genre:
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal target As Range, Cancel As Boolean)
Dim cmdBar As CommandBar
Dim newMenu As CommandBarControl
Dim subMenu As CommandBarControl
Dim Btn As CommandBarButton
On Error Resume Next
Application.CommandBars("test").Delete
On Error GoTo 0
Set cmdBar = Application.CommandBars.Add("test", msoBarPopup, False, True)
With cmdBar
    Set newMenu = .Controls.Add(Type:=msoControlPopup)
    newMenu.Caption = "&First Menu"
    With newMenu
        Set Btn = .Controls.Add(1)
        With Btn
            .FaceId = 19
            .Caption = "essais"
            .OnAction = "monAction1"
        End With
    End With
    Set newMenu = .Controls.Add(Type:=msoControlPopup)
    newMenu.Caption = "&Second Menu"
    With newMenu
        Set Btn = .Controls.Add(1)
        With Btn
            .FaceId = 5
            .Caption = "essais"
            .OnAction = "monAction2"

        End With
    Set subMenu = .Controls.Add(Type:=msoControlPopup)
        subMenu.Caption = "&Sous-menu"
    Set Btn = subMenu.Controls.Add(1)
        With Btn
            .FaceId = 33
            .Caption = "essais2"
            .OnAction = "monAction3"

        End With
    End With
    .ShowPopup
End With
Cancel = True
End Sub
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 134
Messages
6 718 059
Membres
1 586 394
Dernier membre
Manoushk
Partager cette page
Haut