Страницы: 1
RSS
Народ, подскажите пожалуйста, как работать с CommandBars.Add ?
 
Добрый день. Я тут решился попрактиковаться в создании пользовательских меню средствами VBA.
Открыл первый попавшийся мне по данной теме ресурс.
Тупо скопировал код
Код
 Dim CstmBar As CommandBar
Set CstmBar = CommandBars.Add(Name:="Головнoe меню",
Position:=msoBarTop, MenuBar:=True, Temporary:=False)

В простейшую процедурку, но не тут то было!
Началось все с не верного синтаксиса перенесения строк.
Подправил. За одно написал свои параметры.
Код
Set CstmBar = CommandBars.Add Name:="Меню", Position:=msoBarPopup, MenuBar:=False, Temporary:=True
Такой синтаксис тоже ошибочен.
Заключил параметры в скобки.
Код
Set CstmBar = CommandBars.Add(Name:="Меню", Position:=msoBarPopup, MenuBar:=False, Temporary:=True)

Редактор материться перестал, но лучше не стало, потому что теперь полезла 5я ошибка времени выполнения - неверные call параметры!
Решил убрать имена параметров и сделать короткую форму записи.
Код
Set CstmBar = CommandBars.Add("Меню", msoBarPopup, False, True)

Все равно лезет 5я ошибка.
Чё ему надо?
 
Цитата
Neufazendnik написал:
Чё ему надо?
Наверно шобы вы удалили для начала то, что налепили предыдущими попытками
Код
CommandBars("Меню").Delete
Set CstmBar = CommandBars.Add("Меню", msoBarPopup, False, True)
 
Вот, спасибо, добрый человек! :))))
Так заработало! Точнее, перестало ругаться.
Но рано радуюсь.
Где оно появляется - не понятно :)
Я что-то не вижу результата работы макроса.
Изменено: Neufazendnik - 13.12.2018 23:47:06
 
Код
Sub aaa()
CommandBars("Меню").Delete
Set CstmBar = CommandBars.Add("Меню", msoBarPopup, False, True)
Application.CommandBars("Меню").ShowPopup 0, 0
End Sub
И любуетесь на пустой квадратик в левом верхнем углу.
 
Апострофф, Спасибо! Так-то уже лучше. Раскачали!
Страницы: 1
Наверх