В столбце Макрокоманда
стрелкой прокрутки надо вызвать выпадающее меню и в нем выбрать нужную команду – в нашем случае К элементу управления. (Использовать стрелку прокрутки не обязательно: введите несколько первых букв названия макрокоманды, а Access 2002 допишет его. Но для этого вы должны точно знать имя макрокоманды, что бывает далеко не всегда.) В поле Примечание вы при желании можете включить любые комментарии к макрокоманде. В поле Аргументы макрокоманды вводятся специфические параметры. Для выбранной нами макрокоманды К элементу управления требуется указать только имя того элемента управления, к которому надо перейти. Естественно, для других макрокоманд аргументы могут быть значительно сложнее, в чем вы убедитесь дальше. Итак, введите в поле Имя элемента имя следующего поля формы, в которое необходимо перейти, – Страна. После этого макросу в окне конструктора можно дать название (по умолчанию будет определено имя Макрос42) и закрыть.Теперь надо связать созданный макрос с событием Получение фокуса.
В окне поля Код (см. рис. 10.2) щелкните по стрелке прокрутки в поле свойства Получение фокуса. В выпадающем меню снова выберите Макрос42 (см. рис. 10.4).Этого достаточно, чтобы установить связь созданного макроса с событием. Окно, где она задана, надо сохранить. Точно так же задается автоматический переход от одного поля к другому и в этой, и во всех остальных формах. Единственная оговорка: как уже отмечалось, в этих случаях макрос нужно связать с другим свойством – После обновления.
Использование макроса при выполнении сложного запроса
Как вы помните, в главе 7 описывалось создание объединенной выборки записей из разнородных файлов, которые имели различную структуру, были разработаны в различных организациях и в разных программных средах, но интегрированы в единый банк данных в программной среде Access 2002. Выполнять задуманную операцию пришлось в два этапа: сначала формировать запрос на создание таблицы Выборка1
, куда вошли записи из одного файла, а затем генерировать запрос на добавление данных в эту таблицу из другого файла. Сейчас с помощью макроса мы можем объединить оба этапа работы, упростив решение задачи. Мы будем по-прежнему использовать запросы, но организуем их в макропоследовательность, которая имеет название и выполняется как целостная операция.Прежде чем показать, как это делается, произведем чисто техническое, вспомогательное действие – переименуем запросы, которые нам понадобятся. Запросу Запрос7
дадим название Запрос на создание таблицы, а запросу Запрос8 – Запрос на добавление записей. Такое переименование нужно лишь для того, чтобы при объединении запросов их новые названия наглядно свидетельствовали о функции каждой части созданного макроса.Как и раньше, откройте окно конструктора макросов, а затем активизируйте опцию Открыть запрос.
Этот этап работы показан на рис. 10.5.Рис. 10.5
У макрокоманды Открыть запрос
уже другой список аргументов, каждый из которых имеет свои значения:• Имя запроса
– имена запросов, которые вы хотите включить в создаваемый макрос;• Просмотр
:– Таблица
;– Конструктор
;– Предварительный просмотр при печати
;• Режим
:– Добавить
;– Редактировать
;– Только для чтения
.Выбранные значения показаны на рис. 10.5.
Теперь добавьте к создаваемому макросу второй запрос (см. рис. 10.6): в следующую строку столбца Макрокоманда
точно так же, как и в первом случае, введите макрокоманду Открыть запрос. Все дальнейшие действия полностью повторяются, изменяется лишь имя второго запроса – теперь это Запрос на добавление записей.