Создание пользовательского меню

Программирование на Visual Basic for Applications
Annushka
Обычный пользователь
Обычный пользователь
 
Сообщения: 81
Зарегистрирован: 17.05.2005 (Вт) 12:44
Откуда: Украина

Создание пользовательского меню

Сообщение Annushka » 23.05.2005 (Пн) 16:28

Всем доброго времени суток!
Хочу добавить в стандартное меню свой пункт и 2 подменю.
Получаю пункт меню "Мое меню" и рядом еще 2 пустых пукта.
Подскажите, пожалуйста, что не так делаю.

Текст:
Код: Выделить всё

Private Sub Workbook_Open()

Const menuname = "Мое меню"

Dim num As Integer
num = Application.CommandBars("Worksheet Menu Bar").Controls.Count
num = num + 1

Dim a As CommandBarControl
Set a = Application.CommandBars("Worksheet Menu Bar").Controls.Add(Type:=msoControlPopup, Before:=num)
a.Caption = menuname

With Application.CommandBars("Worksheet Menu Bar")
    Set mButton = .Controls.Add(Type:=msoControlButton)
    With mButton
         .Caption = "Подменю1"
         .OnAction = "MySub1"
    End With
    Set mButton1 = .Controls.Add(Type:=msoControlButton)
    With mButton1
         .Caption = "Подменю2"
         .OnAction = "MySub2"
    End With
End With

End Sub

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 23.05.2005 (Пн) 16:35

Код: Выделить всё
with Application.CommandBars("Worksheet Menu Bar").Controls.Add(Type:=msoControlPopup)
  .Caption = menuname
  with .Controls.Add(Type:=msoControlButton)
    .Caption = "Подменю1"
    .OnAction = "MySub1"
  end with
  with .Controls.Add(Type:=msoControlButton)
    .Caption = "Подменю2"
    .OnAction = "MySub2"
  end with
end with
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Annushka
Обычный пользователь
Обычный пользователь
 
Сообщения: 81
Зарегистрирован: 17.05.2005 (Вт) 12:44
Откуда: Украина

Сообщение Annushka » 23.05.2005 (Пн) 16:38

Спасибо огромное, GSerg
И отдельное спасибо за оперативность.
Все получилось :D


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 20

    TopList