VBA Excel 2019: msoControlPopup выдает ошибку «Объект не поддерживает это свойство или метод» - PullRequest
0 голосов
/ 30 октября 2018

Я пытаюсь использовать надстройку, которая отлично работает на ПК, а также в Excel 2011 для Mac. Когда я пытаюсь использовать его с Excel 2019 на Mac, я получаю сообщение об ошибке выше при попытке добавить элементы управления. Последняя строка в следующем коде вызывает проблему:

Sub AddMenu()
Dim cMenu1 As CommandBarControl
Dim cbMainMenuBar As CommandBar
Dim iHelpMenu As Integer
Dim cbcCustomMenu As CommandBarControl
'Delete any existing one. We must use On Error Resume next in case it does not exist.
On Error Resume Next
Application.CommandBars("Worksheet Menu Bar").Controls("&AS Tool").Delete
On Error GoTo 0
'Set a CommandBar variable to Worksheet menu bar
Set cbMainMenuBar = Application.CommandBars("Worksheet Menu Bar")
'Return the Index number of the Help menu. We can then use this to place a custom menu before.
iHelpMenu = cbMainMenuBar.Controls("Help").Index
'Add a Control to the "Worksheet Menu Bar" before Help.
'Set a CommandBarControl variable to it
Set cbcCustomMenu = cbMainMenuBar.Controls.Add(Type:=msoControlPopup, Before:=iHelpMenu)
'Give the control a caption
cbcCustomMenu.Caption = "&AS Tool"
'Working with our new Control, add a sub control and give it a Caption and tell it which macro to run (OnAction).
With cbcCustomMenu.Controls.Add(msoControlButton)

Очевидно, msoControlPopup больше не поддерживает .controls.add. Есть ли известный обходной путь?

...