После окончания выполнения необходимых действий необходимо нажать левую кнопку на панели — "Остановка записи". Если необходимо прерваться и все же выделить какой-нибудь объект мышью, то необходимо нажать правую кнопку на этой панели — "Пауза". При повторном ее нажатии процесс записи продолжится. Пример подробного анализа результатов подобной записи будет показан в главе 3. А сейчас рассмотрим другой, более традиционный способ написания программ на VBA — посредством Редактора VBA.
В Microsoft Word этот редактор вызывается из меню "Сервис"-"Макросы"-"Редактор Visual Basic" или нажатием клавиш Alt-F11. Окно редактора VBA (рис. 1.3.) состоит из следующих частей: Менеджер проектов, Окна текста программ и дизайна форм, Окно свойств, Окно отладки, Окно контрольного значения, Окно локальных переменных, Стек вызова, Окно просмотра объектов. Каждое окно может как отображаться на экране, так и нет. Ниже мы рассмотрим все эти компоненты подробнее.
Рис. 1.3
.Программы на VBA для среды Word хранятся в документах и шаблонах Word. (Другие форматы для хранения макросов непригодны.) Каждый документ или шаблон, содержащий макросы, называется проектом. В окне Менеджера проектов отображаются названия всех доступных Word проектов, в состав которых входят открытые документы и шаблоны, а также шаблоны, загруженные глобально — через помещение их в папку автозагружаемых файлов Word. Кроме того, всегда в этом окне отображается шаблон Normal.dot со всеми макросами, сохраненными в нем (см. рис. 1.4).
Рис. 1.4.
Щелкнув мышью по знаку "+" слева от названия, можно открыть список имеющихся компонентов проекта. Однако так можно поступить лишь с проектами, открытыми в Word: шаблон, загруженный глобально (т. е. путем помещения его в папку автозагружаемых файлов Word), так открыть нельзя, — чтобы получить доступ к его коду для редактирования, необходимо открыть его как файл. Иначе при попытке просмотра будет выдано сообщение "Проект недоступен для просмотра" и доступ к коду будет невозможен.
Просмотр компонентов проекта можно запретить путем задания пароля, однако делать так не стоит.
Компоненты каждого проекта делятся на пять больших категорий:
1. "Microsoft Word объекты".
В макросах для Word здесь имеется только один объект — называющийся по умолчанию ThisDocument. Его контекстное меню, появляющееся при нажатии правой кнопки мыши, выглядит так, как показано на рис. 1.5.Рис. 1.5.
При выборе пункта Объект (для Normal.dot недоступен) произойдет переход к соответствующему документу — к его содержимому: тексту, графике. В документ Microsoft Word можно вставить специальные объекты — кнопки, поля ввода текста, поля выбора вариантов и др. В этом случае после выбора пункта Программа контекстного меню объекта ThisDocument можно написать программу, которая будет выполняться при нажатии соответствующей кнопки, введении текста и др. К написанию такой программы можно перейти и из контекстного меню самого специального объекта в документе — выделив его, нажав правую кнопку и выбрав пункт "Исходный текст".
В Microsoft Excel в Редакторе VBA в качестве объектов представлены все листы рабочей книги Excel по отдельности, а также сама книга как целое.
2. "Модули."
Модули — это и есть то место, где хранятся сами макросы. Щелкнув два раза мышью на имени модуля, можно получить доступ к тексту программы или начать ее создавать. В одном модуле может содержаться несколько макросов.Программы, записанные пользователем с помощью средства записи макросов, хранятся по умолчанию в модуле NewMacros шаблона Normal.dot.
Для того, чтобы создать новый модуль, необходимо из контекстного меню Менеджере проектов выбрать пункт "Вставить"-"Модуль".