- •Лабораторная работа № 9 Создание макросов
- •Создание макроса для открытия таблиц
- •Создание кнопок для фильтрации данных в форме
- •Использование макросов для поиска записей в форме
- •Проверка корректности ввода данных с использованием макросов
- •IsNull(Forms! [Студенты]![Философия])
- •Forms! [Студенты] '[Философия]
- •Создание группы макросов для открытия форм и отчетов
- •Синхронизация двух форм с помощью свойства Текущая запись
- •Создание главной кнопочной формы с использованием макросов. Создание специального меню
Создание кнопок для фильтрации данных в форме
3. Создайте в форме Студенты кнопки для просмотра данных о студентах по курсам, используя макрос Применить Фильтр.
Последовательность действий:
Сначала необходимо добавить кнопки в форму Студенты, выполнив следующие действия:
Откройте форму Студенты в режиме конструктора.
На панели элементов отключите кнопку Мастера.
На панели элементов выберите элемент Кнопка и перетащите его в область данных.
Аналогично добавьте в форму еще пять кнопок, разместив их друг под другом.
Щелкните правой кнопкой мыши по первой кнопке. Из появившегося контекстного меню выберите строку Свойства. В окне свойств выберите вкладку Макет и в строке Подпись введите I-ый курс. Не закрывая окно свойств, щелкните по второй кнопке и введите подпись II-второй курс. Аналогично измените подписи для 3,4 и 5-ой кнопки. Для последней кнопки введите подпись Все записи.
Используя элемент прямоугольник, обведите группу кнопок.
Задайте заголовок для группы кнопок. Для этого на панели элементов выберите элемент Надпись, перетащите его в область данных, расположив над прямоугольником, и введите слово Фильтр.
Просмотрите форму в режиме формы. Обратите внимание, что при щелчке мыши по созданным кнопкам ничего не происходит. Для того, чтобы кнопки работали необходимо создать макросы для фильтрации данных.
Создайте макросы для фильтрации данных, выполнив следующие действия:
В окне базы данных выберите вкладку Макросы.
Щелкните на кнопке Создание – Другие – Макрос в окне базы данных и MS Access откроет окно макросов.
Выберите в меню команду Конструктор – Показать и скрыть – Имена макросов и MS Access добавит столбец Имя макроса.
В первой строке столбца Имя макроса введите имя макроса Фильтр 1
В столбце Макрокоманда раскройте выпадающий список и выберите команду Применить Фильтр.
В нижней части окна в области Аргументы макрокоманды щелкните в ячейку Условие отбора. Для построения условия отбора щелкните по кнопке построителя. В окне Построитель выражений создайте следующее условие (для отбора студентов 1-го курса):
[Студенты]![Курс]="I"
Нажмите ОК в окне построителя выражений.
• Для создания второго макроса щелкните в третью строчку столбца Имя макроса (вторую строчку пропускаем для лучшей читаемости макроса) и введите имя макроса Фильтр 2. Аналогично в столбце Макрокоманда выберите макрокоманду Прменить Фильтр. В области Аргументы макрокоманды задайте с помощью построителя выражений условие (для выбора студентов II-го курса):
[Студенты]! [Курс]="II"
Аналогично добавьте в группу макросы ФильтрЗ, Фильрт4 и Фильтр5 для выбора студентов соответствующих курсов.
Далее щелкните в следующей строке столбца Имя макроса и введите имя макроса Все. В столбце Макрокоманда выберите команду Показать Все Записи, которая используется для отмены фильтрации установленной другими макросами.
Сохраните созданную группу макросов. Для этого нажмите кнопку Сохранить на панели инструментов, введите имя Фильтр и нажмите ОК.
После создания макросов фильтрации необходимо связать их с ранее созданными кнопками. Для этого выполните следующие действия.
Откройте форму Студенты в режиме конструктора.
Правой кнопкой мыши щелкните по кнопке I-ый курс. В контекстном меню выберите строку Свойства.
В появившемся окне свойств щелкните по вкладке События.
Щелкните в строке Нажатие кнопки, раскройте выпадающий список и выберите макрос Фильтр.Фильтр1.
Не закрывая окно свойств, щелкните по кнопке II-ой курс и свяжите событие Нажатие кнопки с макросом Фильтр.Фильтр2.
Аналогично свяжите кнопку III-ий курс с макросом Фильтр.ФильтрЗ и т.д. Кнопку Все записи свяжите с макросом Фильтр.Все.
Перейдите в режим формы и убедитесь, что при нажатии кнопки фильтрации в форме выводятся данные о студентах выбранного курса. Для того, чтобы в форме отображались все данные, нажмите кнопку Все записи.