![](/user_photo/2706_HbeT2.jpg)
- •Лабораторная работа № 9 Создание макросов
- •Создание макроса для открытия таблиц
- •Создание кнопок для фильтрации данных в форме
- •Использование макросов для поиска записей в форме
- •Проверка корректности ввода данных с использованием макросов
- •IsNull(Forms! [Студенты]![Философия])
- •Forms! [Студенты] '[Философия]
- •Создание группы макросов для открытия форм и отчетов
- •Синхронизация двух форм с помощью свойства Текущая запись
- •Создание главной кнопочной формы с использованием макросов. Создание специального меню
Синхронизация двух форм с помощью свойства Текущая запись
7. Создайте макрос для синхронизации (одновременной работы) форм Факультеты и Специальности. Для этого сначала используйте макрос Открытие форм и отчетов для задания свойства Текущая запись формы Факультеты.
Последовательность действий:
Откройте форму Факультеты в режиме конструктора.
Выполните команду меню Конструктор–Сервис–Страница свойств.
В окне свойств формы щелкните по вкладке События.
Затем раскройте выпадающий список и выберите из списка макросов макрос Открытие форм и отчетов.ФормаСпециальности.
Сохраните изменения и закройте форму Факультеты.
Откройте форму Факультеты в режиме формы, дважды щелкнув по ней в окне базы данных.
Теперь при открытии формы Факультеты одновременно открывается и форма Специальности, но данные в них пока не связаны. Для синхронизации двух форм (чтобы при просмотре записей в форме Факультеты автоматически выводилась информация о специальностях выбранного факультета) необходимо выполнить следующие действия:
Откройте макрос Открытие форм и отчетов в режиме конструктора
Щелкните по имени макроса ФормаСпециальности
В области Аргументы макрокоманды щелкните в строке Условие отбора и задайте следующее условие:
[Код факультета]=[Forms]! [Факультеты]! [Код факультета]
Сохраните внесенные изменения и закройте окно конструктора макросов.
Теперь при просмотре записей в форме Факультеты автоматически выводится информация о специальностях выбранного факультета в форме Специальности.
Закройте форму Факультеты и форму Специальности.
Обратите внимание, что закрытие одной формы не вызовет автоматического закрытия другой. Если вы хотите, чтобы две формы закрывались одновременно, необходимо создать макрос для закрытия формы Специальности и связать его со свойством Закрытие формы Факультеты. Для этого выполните следующие действия.
Щелкните по вкладке Создание–Другие–Макросы и нажмите кнопку Макрос.
В окне конструктора макросов щелкните в столбце Макрокоманда.
Из выпадающего списка выберите макрокоманду Закрыть.
В области Аргументы макрокоманды щелкните в строку Тип объекта, раскройте выпадающий список и выберите тип объекта Форма.
Щелкните в строке Имя объекта, раскройте выпадающий список и выберите форму Специальности.
Сохраните макрос под именем Закрытие формы и закройте его.
Свяжите созданный макрос с формой Факультеты. Для этого:
Откройте форму Факультеты в режиме конструктора.
Выполните команду меню Конструктор–Сервис–Страница свойств.
В окне свойств формы щелкните по вкладке События, затем щелкните в строке Закрытие, раскройте выпадающий список и выберите из списка макрос Закрытие формы.
Сохраните изменения и перейдите в режим формы. Теперь при закрытии формы Факультеты автоматически закрывается и форма Специальности.
Создание главной кнопочной формы с использованием макросов. Создание специального меню
8. Создайте главную кнопочную форму для базы данных Студенты с использованием макросов.
Последовательность действий:
Создайте с помощью конструктора новую форму (в качестве источника данных ничего не указывайте).
Добавьте в новую форму пять кнопок, отключив на панели элементов кнопку Мастера. Кнопки расположите друг под другом.
Для первой кнопки создайте надпись Форма Факультеты. Для этого на панели элементов выберите элемент Надпись и щелкните в области данных левее первой кнопки (Кнопки0) и введите текст Форма Факультеты.
Для остальных кнопок создайте следующие надписи: Форма Студенты, Отчет Специальности, Отчет Студенты, Выход.
Удалите подписи на кнопках:
Вызовите окно свойств кнопки Кнопка0, щелкните по вкладке Макет и удалите текст из строки Подпись.
Не закрывая окно свойств, щелкните по кнопке Кнопка 1 и удалите текст из строки Подпись. Аналогичные действия проделайте для остальных кнопок и закройте окно свойств.
Сохраните форму под именем Кнопочная форма и перейдите в режим формы.
Попробуйте использовать любую из пяти кнопок, созданных вами в режиме конструктора.
Примечание. Обратите внимание, что, так как кнопки созданы без помощи мастера, после щелчка по ним ничего не происходит. Для того чтобы щелчок на кнопке приводил к определенным действиям, необходимо связать ее с макросом.
Для связывания кнопки с макросом выполните следующие действия:
Перейдите в режим конструктора.
Вызовите окно свойств для первой кнопки (с надписью Форма Факультеты).
Щелкните по вкладке События, раскройте выпадающий список и выберите макрос Открытие форм и отчетов. ФормаФакультеты.
Не закрывая окно свойств, щелкните по второй кнопке (с надписью Форма Студенты) и аналогично свяжите ее с макросом Открытие форм и отчетов.ФормаСтуденты.
Таким же образом свяжите кнопку Отчет Специальности с макросом Открытие форм и отчетов.ОтчетСпециальности, а кнопку Отчет Студенты с макросом Открытие форм и отчетов.ОтчетСтуденты.
Для связывания кнопки Выход с макросом выполните следующие действия:
Щелкните по кнопке Выход. В окне свойств выберите событие Нажатие кнопки и нажмите кнопку построителя.
В окне Построитель выберите строку Макросы и нажмите кнопку ОК.
Из выпадающего списка выберите макрокоманду Выход, сохраните изменения и закройте окно конструктора макросов.
Сохраните изменения и закройте окно свойств кнопки Выход.
Измените внешний вид кнопочной формы:
• С помощью панели элементов оформите форму по своему усмотрению.
Перейдите в режим формы. Обратите внимание, как изменился внешний вид формы и проверьте, как работают кнопки. После нажатия кнопки Выход, база данных Студенты закрывается и происходит выход из приложения.
Снова войдите в Ассеss и откройте базу данных Студенты.
9. Создайте новый макрос АutоЕхес, который обеспечит автоматическое открытие формы Кнопочная форма при каждом открытии базы данных Студенты.
Последовательность действий:
Создайте новый макрос.
В столбце Макрокоманда раскройте список и выберите макрокоманду Свернуть.
Щелкните во второй строке столбца Макрокоманда и выберите из списка макрокоманду ОткрытьФорму, в области аргументов макрокоманды щелкните в строке Имя формы и выберите название Кнопочная форма.
Сохраните макрос под именем АutoЕхес и закройте окно конструктора макросов. После этого Асеева будет запускать макрос автоматически при каждом открытии базы данных.
Чтобы проверить работу макроса АutоЕхес выйдите из Ассеss. Затем снова войдите в Ассезз и откройте базу данных Студенты. При этом окно базы данных будет минимизировано и этом автоматически запустится Кнопочная форма. Проверьте работу созданного меню.
Примечание. Для отказа от запуска макроса АutоЕхес во время запуска удерживайте нажатой клавишу Shift.
• Завершите работу с МS Ассеss.