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

Вставка и группировка команд

Office 2000 позволяет добавлять команды к любым встроенным и пользовательским меню, а также изменять внешний вид, группировать и визуально отделять одну группу команд от другой.

Добавление встроенной команды с помощью окна Настройка

В диалоговом окне Настройка сделайте модифицируемое меню видимым, а затем:

  1. На вкладке Команды выберите в списке Категории категорию добавляемой команды - все команды данной категории будут показаны в списке Команды.

  2. Выберите в списке Команды команду и перетащите в то меню или подменю, куда она добавляется. Чтобы выпадающее меню или подменю открылось, показав имеющиеся в нем элементы, протащите команду через заголовок соответствующего выпадающего меню или подменю. Горизонтальная черта отмечает место в списке команд выпадающего меню, куда попадет заголовок нового подменю, когда Вы отпустите кнопку мыши.

Скопировать команду можно и иначе: выведите на экран меню с нужной командой и перетащите ее в свое меню при нажатой клавише Ctrl.

Добавление собственной команды с помощью окна Настройка

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

  1. . Microsoft Access. Чтобы добавить команду, запускающую на исполнение макрос, нужно выполнить те же действия, что и при добавлении встроенной команды. При этом в списке Категории выберите Все макросы (All Macros) и перетащите имя нужного макроса из списка Команды в меню. Вызов процедуры-функции вставляется, как и встроенная команда. Выберите в списке Категории нужную категорию и перетащите затем нужный элемент из списка Команды в свое меню. Щелкнув этот элемент правой кнопкой мыши, в появившемся меню выберите команду Свойства (Control Properties). На экране появится окно с тем же именем. В поле Подпись (Caption) этого окна замените прежнее имя функции на новое (это будет имя команды в меню). В поле Действие (On Action) введите выражение =имя-функции(), запускающее VBA-функцию на исполнение.

  2. Microsoft Excel. Действуя, как и при вставке встроенной команды, выберите в списке Категории команду Макрос (Macros ) и перетащите элемент Настраиваемая команда меню (Custom Menu Item) из списка Команды в меню. Щелкните эту команду правой кнопкой мыши и выберите в появившемся меню команду Назначить макрос (Assign Macro). Затем введите в поле Имя (Macro Name) имя макроса, который должен запускаться командой меню.

  3. Microsoft Word и Microsoft PowerPoint. Как при вставке встроенной команды, выберите в списке Категории команду Макрос и перетащите в меню имя нужного макроса из списка Команды.

Добавление команд с помощью vba

Добавить новую команду в меню можно, применив метод Add коллекции CommandBarControls к объекту, представляющему изменяемое меню. Чтобы добавить собственную команду, вставьте ее имя в меню, а затем в качестве значения свойства OnAction задайте имя VBA-процедуры, которая должна вызываться при выборе данной команды. В качестве значения аргумента Type (Тип) метода Add укажите msoControlButton, означающее, что вставляемый в меню элемент будет командой. Добавим команду "Накладная" в выпадающее меню "Ввод документов" из панели "Головное меню". Выбор этой команды запускает процедуру Invoice.

Set CstmCtrl = CstmPopUp1.Controls.Add(Type:=msoControlButton)

CstmCtrl.Caption = "Накладная"

CstmCtrl.OnAction = "Module1.Invoice"

Метод Add позволяет вставлять в меню и встроенные команды. Для этого при вызове задайте значение параметра Id, равное числовому идентификатору данной команды в Office 2000. Поскольку в Office 2000 количество команд доходит до 4000, мы приведем здесь лишь два фрагмента из начала таблицы идентификаторов, включающих, в частности, некоторые популярные команды из меню File и Edit.

Таблица 11.1. Фрагмент таблицы идентификаторов встроенных команд меню

Идентификатор

Имя команды

Локальное имя

Идентификатор

Имя команды

Локальное имя

2

&Spelling

Орфография

19

&Copy

Копировать

3

&Save

Сохранить

21

&Cut

Вырезать

4

&Print

Печать

22

&Paste

Вставить

18

&New

Создать

23

&Open

Открыть

Взгляните, как в меню "Проверки" из панели "Головное меню" можно вставить команду проверки правописания Spelling.

Set mySpell = CommandBars("Головное меню").Controls("Проверки") _

.Controls.Add(Id:=2)