Автоматический запуск VBA-программ

We use cookies. Read the Privacy and Cookie Policy

Автоматический запуск VBA-программ

Предположим, что у вас есть VBA-программа, которую вы любите настолько, что хотели бы видеть ее в действии самой первой каждый раз, когда запускаете свое приложение. А если вы любите свою программу так сильно, что и такую, казалось бы, ничтожную задержку, как щелчок на кнопке, наверное, нелегко пережить.

К счастью для вас, многие VBA-приложения предусматривают возможность автоматического выполнения программного кода VBA при запуске и закрытии приложения, при открытии и закрытии документа, а также при наступлении некоторых других событий.

В табл. 4.1-4.3 представлены приемы, которые можно использовать в самых популярных VBA-приложениях для автоматического запуска VBA-программ.

Таблица 4.1. Автоматическое выполнение VBA-программ при запуске приложения с помощью ярлыка

Приложение

Команда, добавляемая в поле

Файл на вкладке Ярлык

Комментарий

Microsoft Word

/mVBA

Вместо VBA напечатайте имя своей VBA программы

Microsoft Access

/xmakpoc

Выполняет все макросы из указанного вами списка. Чтобы выполнить процедуру VBA, макрос Access должен включать макрокоманду ЗапускПрограммы

Таблица 4.2. Автоматическое выполнение VBA-программ в Word с помощью назначения программам специальных имен

Имя VBA-программы

Условие автоматического выполнения программы

AutoExec

AutoNew

При запуске Word

При создании каждого нового документа

AutoOpen

AutoClose

AutoExit

При открытии любого существующего документа

При закрытии документа

При выходе из Word

Замечание. Макрос AutoExec должен храниться в шаблоне Обычный ( normal.dot ).

Таблица 4.3. Выполнение VBA-программ с помощью процедур обработки событий (создание процедур обработки событий обсуждается в главе 14)

Приложение

Условие автоматического вызова процедуры

Используйте объект

Создайте процедуру обработки события

Visio

При создании нового документа

Document

Document Opened

Visio

При сохранении документа под другим именем

Document

Document SavedAs

Microsoft Word

При открытии документа

Document

Open

Microsoft Word

При создании нового документа

Document

New

Microsoft Word

При закрытии документа

Document

Close

Microsoft Excel

При открытии любой рабочей книги

Application

WorkbookOpen

Microsoft Excel

При открытии конкретной рабочей книги

Workbook

Open

Microsoft Excel

При создании новой рабочей книги

Workbook

NewSheet

Замечание. Совсем немногие из длинного списка событий Visio, Word и Excel относятся ко всему документу.

Работа с ярлыками Windows

Некоторые приложения позволяют выполнить программный код VBA с помощью добавления команд к имени приложения при его запуске (см. табл. 4.1). Если вы не хотите утруждать себя набиранием этих команд в командной строке DOS, модифицируйте или создайте подходящий ярлык Windows, который будет вызывать это приложение.

Пиктограммы в меню Пуск Windows представляют ярлыки. Чтобы модифицировать их, щелкните правой кнопкой мыши на кнопке Пуск, из появившегося небольшого меню выберите пункт Открыть, а затем откройте папку Программы и подходящие вложенные в нее папки, чтобы увидеть ярлык вашего приложения. Теперь щелкните правой кнопкой мыши на ярлыке и выберите из появившегося меню пункт Свойства, чтобы открыть диалоговое окно Свойства.

В этом диалоговом окне перейдите на вкладку Ярлыки. В текстовом поле Файл после имени самого приложения напечатайте нужную команду. Например, чтобы при запуске Word выполнялась процедура VBA, текст в поле Файл должен выглядеть примерно так:

C:Microsoft OfficeWINWORD.EXE /mAutomaticNovel

Чтобы создать новый ярлык, щелкните правой кнопкой мыши в любом месте рабочего стола, в окне Мой компьютер или окне Проводник. В появившемся контекстном меню выберите Создать=Ярлык и позвольте Windows провести вас через оставшиеся шаги. После этого появившийся ярлык вы сможете изменить в соответствии с инструкциями, приведенными в этой врезке выше.