Я использовал учебник Рона де Брюина , чтобы создать пользовательское меню правой кнопки мыши.Это не проблема при использовании его в типе файла XLSM, но когда я пытаюсь превратить его в надстройку Excel, меню правой кнопки мыши не появляется.Есть ли что-то конкретное, что мне нужно добавить в код, чтобы включить его?
Код, который я использовал в 'ThisWorkbook':
Private Sub Workbook_Activate()
Call AddToCellMenu
End Sub
Private Sub Workbook_Deactivate()
Call DeleteFromCellMenu
End Sub
Код, который я использовал в отдельном модуле::
Sub AddToCellMenu()
Dim ContextMenu As CommandBar
Dim MySubMenu As CommandBarControl
Call DeleteFromCellMenu
Set ContextMenu = Application.CommandBars("Cell")
Set MySubMenu = ContextMenu.Controls.Add(Type:=msoControlPopup, before:=3)
With MySubMenu
.Caption = "Recruitment"
.Tag = "My_Cell_Control_Tag"
With .Controls.Add(Type:=msoControlButton)
.OnAction = "'" & ThisWorkbook.Name & "'!" & "Rejections"
.FaceId = 97
.Caption = "Format Rejections"
End With
With .Controls.Add(Type:=msoControlButton)
.OnAction = "'" & ThisWorkbook.Name & "'!" & "Hires"
.FaceId = 87
.Caption = "Format Hires"
End With
End With
ContextMenu.Controls(4).BeginGroup = True
End Sub
Sub DeleteFromCellMenu()
Dim ContextMenu As CommandBar
Dim ctrl As CommandBarControl
Set ContextMenu = Application.CommandBars("Cell")
For Each ctrl In ContextMenu.Controls
If ctrl.Tag = "My_Cell_Control_Tag" Then
ctrl.Delete
End If
Next ctrl
On Error Resume Next
ContextMenu.FindControl(ID:=3).Delete
On Error GoTo 0
End Sub
Отклонения и наймы - это два макроса, которые я прошу для вызова.Это простые макросы, которые, я знаю, работают нормально, поэтому не потрудились добавить код для них.