VBA - меню надстроек Excel исчезает при выборе графика - PullRequest
0 голосов
/ 06 июля 2018

Я создал меню надстроек для своей таблицы в VBA (код ниже). Я могу получить доступ к этому меню нормально, но оно исчезает, когда я выбираю график (фотографии ниже).

Есть ли способ получить доступ к этому меню, пока я выбрал график?

Ячейка выбрана, доступно дополнительное меню «График»:

Cell selected, add-in menu 'Graph' accessible

График выбран, надстройка «График» исчезла:

enter image description here

Код VBA:

Sub Workbook_Open()
Dim cmbBar As CommandBar
Dim cmbControl As CommandBarControl
On Error Resume Next
    Application.CommandBars("Worksheet Menu Bar").Controls("Graph").Delete
Set cmbBar = Application.CommandBars("Worksheet Menu Bar")
Set cmbControl = cmbBar.Controls.Add(Type:=msoControlPopup, temporary:=True) 'adds a menu item to the Menu Bar
With cmbControl
    .Caption = "&Graph" 'names the menu item
    With .Controls.Add(Type:=msoControlButton) 'adds a dropdown button to the menu item
        .Caption = "&Graph layout" 'adds a description to the menu item
        .OnAction = "FormatCharts" 'runs the specified macro
    End With
End With
End Sub

1 Ответ

0 голосов
/ 06 июля 2018

Я нашел ответ в конце, с некоторой помощью из комментария Рори выше, который указал мне правильное направление:

Использование «строки меню графика» вместо «строки меню рабочего листа» устраняет проблему

Set cmbBar = Application.CommandBars("Chart Menu Bar")

Редактировать: Странно, как только выбрано более одного графика, меню диаграммы исчезает и меню рабочего листа появляется снова, обходя его, добавляя меню как к строке меню рабочего листа, так и к строке меню графика, но -.-

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...