Проблема с инсталяцией меню

Программирование на Visual Basic for Applications
AHTOXA
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 147
Зарегистрирован: 17.04.2003 (Чт) 13:38
Откуда: Россия, г. Петрозаводск

Проблема с инсталяцией меню

Сообщение AHTOXA » 18.04.2003 (Пт) 17:48

Такая проблема:
При добавлении надстройки у меня настраивается меню:

Private Sub Workbook_AddinInstall()
On Error GoTo errors:
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
Dim import_file As CommandBarControl
Set import_file = Application.CommandBars("Настраиваемое всплывающее меню1").Controls.Add(Type:=msoControlButton, Before:=1)
import_file.Caption = "Import file Alt+i"
import_file.OnAction = "ImportFileByClick"
Exit Sub
errors:
MsgBox (Err.Description)
Err.Clear
End Sub

Проблема в том, что мне нужно заменить "Настраиваемое всплывающее меню1" на англ. аналог, Custom1 пробовал, не работает.
Bandit

AHTOXA
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 147
Зарегистрирован: 17.04.2003 (Чт) 13:38
Откуда: Россия, г. Петрозаводск

Сообщение AHTOXA » 19.04.2003 (Сб) 12:24

Все, разобрался как надо сделать:

Const menuname = "DB operations"

Private Sub Workbook_AddinInstall()
On Error GoTo errors:
Dim num As Integer
num = Application.CommandBars("Worksheet Menu Bar").Controls.Count
num = num + 1
Dim custom_bar As CommandBarControl
Set custom_bar = Application.CommandBars("Worksheet Menu Bar").Controls.Add(Type:=msoControlPopup, Before:=num)
custom_bar.Caption = menuname
custom_bar.CommandBar.Name = "Custom1" Set cb = Application.CommandBars("Worksheet Menu Bar").Controls(num)
Dim import_file_btn As CommandBarControl
Set import_file_btn = Application.CommandBars("Custom1").Controls.Add(Type:=msoControlButton, Before:=1)
import_file_btn.Caption = "Import file Alt+i"
import_file_btn.OnAction = "ImportFileByClick"

Exit Sub
errors:
MsgBox (Err.Description)
Err.Clear
End Sub

Т. е. надо было добавить строку: custom_bar.CommandBar.Name = "Custom1"
Bandit


Вернуться в VBA

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 75

    TopList