Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОСНОВЫ ОФИСНОГО ПРОГРАММИРОВАНИЯ И ЯЗЫК VBA - 3....doc
Скачиваний:
37
Добавлен:
17.12.2018
Размер:
1.65 Mб
Скачать

Создание меню с помощью vba

Новое меню в Excel, Word или PowerPoint обычно создается средствами VBA, поскольку в этих приложениях диалоговое окно Настройка не содержит кнопки Свойства. В Access тоже можно создать меню, используя VBA, но, все же, удобнее действовать описанным выше способом.

Новое меню создается методом Add коллекции CommandBars (Панели команд):

выражение.Add(Name, Position, MenuBar, Temporary)

где выражение - обязательное выражение, возвращающее объект CommandBars, а все параметры в скобках необязательны. Name задает имя нового меню; Position определяет его положение (значения-константы msoBarLeft, msoBarTop, msoBarRight, msoBarButtom определяют положение меню слева, вверху, справа или внизу окна, msoBarFloating задает "плавающее" меню, msoBarPopup указывает, что новое меню будет всплывающим). Значение True параметра MenuBar указывает, что новое меню заменит текущую активную строку меню (по умолчанию - False). Значение True параметраTemporary означает, что новое меню будет временным и исчезнет, когда закроется содержащее его приложение (по умолчанию - False).

В следующем примере создается новое меню "Головное меню"

Dim CstmBar As CommandBar

Set CstmBar = CommandBars.Add(Name:="Головное меню", _

Position:=msoBarTop, MenuBar:=True, Temporary:=False)

Добавление выпадающих меню

Добавлять новые меню (подменю) и команды к существующим меню, встроенным в Office 2000 или созданным пользователем, также можно двумя способами: используя диалоговое окно Настройка или VBA. Рассмотрим, как добавить выпадающее меню к существующей панели меню (головному меню).

Использование диалогового окна Настройка

Это способ добавления меню или команды более нагляден, и в отличие от процедуры создания нового меню, его можно применять в любом приложении Office 2000, а не только в Access. Откройте диалоговое окно Настройка, а затем:

  1. Если модифицируемого меню на экране нет, щелкните кнопку выбора рядом с именем изменяемого меню в списке Панели инструментов на одноименной вкладке Панели инструментов.

  2. В списке Категории (Categories) на вкладке Команды (Commands) выберите Новое меню (New Menu).

  3. Выберите команду Новое меню (New Menu) справа в списке Команды (Commands) и перетащите ее в то меню, к которому Вы хотите добавить новое меню. При этом знак I отмечает то место в меню, куда попадет имя нового меню, когда Вы отпустите кнопку мыши.

  4. Щелкните правой кнопкой мыши Новое меню (New Menu), и введите имя этого меню в поле Имя (Name) появившегося окна. Одновременно можно задать ключ быстрого доступа к этому меню, поставив символ "&" перед буквой, которая будет этим ключом.

Если теперь щелкнуть имя нового меню, на экране под ним появится пустой прямоугольник. Ниже мы покажем, как вставлять в созданное меню новые команды.

Как добавить встроенное меню

Диалоговое окно Настройка позволяет просто добавить (скопировать) любое из встроенных меню к меню, которое Вы создаете. При этом исходное встроенное меню не изменяется. Для этого в диалоговом окне Настройка сделайте модифицируемое меню видимым, а затем:

  1. Выберите в списке Категории вкладки Команды команду Встроенные меню (Built­in Menus).

  2. Выберите в списке Команды имя нужного встроенного меню и перетащите его на нужное место в панель меню, к которой Вы хотите добавить выбранное встроенное выпадающее меню. Знак I отмечает место на панели, куда попадет встроенное меню.

Есть и другой способ копирования встроенного меню: выберите его на его собственной панели и перетащите в свою панель меню при нажатой клавише Ctrl.