Bonjour
est il possible de créer un menu contextuel sur une listbox1 par un click droit?
Merci
Carlos
est il possible de créer un menu contextuel sur une listbox1 par un click droit?
Merci
Carlos
Option Explicit
'Création de la barre d'outils lors du lancement du UserForm
Private Sub UserForm_Initialize()
Dim Barre As CommandBar
Set Barre = CommandBars.Add("MenuUSF", msoBarPopup, False, True)
With Barre.Controls.Add(msoControlButton, 1, , , True)
.Caption = "Menu 01"
.FaceId = 50
'La procédure va appeler une macro nommée "Macro1", lorsque vous cliquerez
'sur le bouton.
.OnAction = "Macro1"
End With
With Barre.Controls.Add(msoControlButton, 2, , , True)
.Caption = "Menu 02"
.FaceId = 49
'La procédure va appeler une macro nommée "Macro2", lorsque vous cliquerez
'sur le bouton.
.OnAction = "Macro2"
End With
End Sub
Private Sub ListBox1_MouseDown(ByVal Button As Integer, _
ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Dim PosX As Single, PosY As Single
If Button = 2 Then
PosX = (Me.Left + ListBox1.Left + 130)
PosY = (Me.Top + ListBox1.Top + 130)
Application.CommandBars("MenuUSF").ShowPopup PosX, PosY
End If
End Sub
'Supprime la barre d'outils lors de la fermeture du UserForm
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
On Error Resume Next
CommandBars("MenuUSF").Delete
End Sub