Я создал настраиваемое контекстное меню при щелчке правой кнопкой мыши
Я хочу обновить заголовок родительской кнопки, когда я щелкнул любой элемент подменю
Option Explicit
Public Const Mname As String = "MyPopUpMenu"
Sub PopUpMenu()
' Create the custom right click menu.
Call RClickMenu
' Display the popup menu.
On Error Resume Next
Application.CommandBars(Mname).ShowPopup
On Error GoTo 0
End Sub
Настраиваемое меню при щелчке правой кнопкой мыши:
Sub RClickMenu()
Dim MenuItem As CommandBarPopup
Dim SectionType As String
= "Sections"
' Add the popup menu.
With Application.CommandBars.Add(Name:=Mname, Position:=msoBarPopup, _
MenuBar:=False, Temporary:=True)
Set MenuItem = .Controls.Add(Type:=msoControlPopup)
With MenuItem
.caption = "File Type"
With .Controls.Add(Type:=msoControlButton)
.caption = "File 1"
.OnAction = "setCaption"
.Parameter = "file1"
End With
With .Controls.Add(Type:=msoControlButton)
.caption = "File 2"
.OnAction = "setCaption"
.Parameter = "file2"
End With
End With
End With
End Sub
Событие нажатия мыши при щелчке правой кнопкой мыши:
Public Sub btnFindSections_MouseDown(ByVal button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If button = 1 Then
ActiveWorkbook.FollowHyperlink "https://www.file.com"
ElseIf button = 2 Then
PopUpMenu
End If
End Sub
Установить метод подписи:
Sub setCaption()
Select Case CommandBars.ActionControl.Parameter
Case "Sections"
ActiveSheet.Shapes("CommandButton1").Name = "Sections" // Error saying item not found
End Select
End Sub
Внутри setCaption()
, мне нужно найти родительскую кнопку и измените его заголовок с Find files
на Find Sections