Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КОНСПЕКТ ЛЕКЦИЙ(рус).doc
Скачиваний:
98
Добавлен:
09.02.2016
Размер:
16.61 Mб
Скачать

Глава 13. Макросы в Access

13.1. Создание и применение макросов

Microsoft Access – это не только набор таблиц, хранящих взаимосвязанные данные, но и набор средств для работы с данными базы, таких как запросы, формы, отчеты, которые могут быть названы объектами приложения. С помощью кнопочных форм может быть создана панель управления приложением, обеспечивающего пользователя простой доступ ко всем его функциям. Добиться этого без использования средств программирования практически невозможно. Простейшим языком программирования и является язык макросов. Его изучение может рассматриваться как хороший способ введения в программирование на языке VBA.

Макрос – программа, состоящая из последовательности макрокоманд. Макрокоманда - это инструкция, ориентированная на выполнение определенного действия над объектами Access и их элементами. Например, макрокоманды можно использовать для выполнения следующих действий:

- для открытия (или закрытия) любой таблицы, запроса, формы или отчета в любом доступном режиме;

- для выполнения запроса на выборку или запроса на изменение;

- для выполнения действий в зависимости от значений в базе данных, форме или отчете;

- для запуска других макросов или процедур VBA;

- для применения фильтра и запуска приложений;

- и многое другое.

Макросы могут быть запущены непосредственно из окна базы данных или окна макроса. Если макрос зависит от события в форме или отчете, его нужно связать с соответствующим событием и запускать при возникновении этого события.

Перед запуском макрос необходимо сохранить командой Файл ® Сохранить как/экспорт. В окне диалога ввести имя и нажать кнопку ОК.

Создание простого макроса

Чтобы создать простой макрос, нужно открыть окно базы данных, перейти на вкладку Макросы и нажать кнопку Создать. При этом открывается окно нового макроса.

Верхняя часть окна используется для определения нового макроса, а нижняя предназначена для ввода значений аргументов макрокоманд, включенных в макрос. В начале в верхней части присутствуют два столбца с заголовками Макрокоманда и Примечание. Можно увидеть все четыре столбца (рис.13.1), нажав кнопки Имена макросов и Условие на панели инструментов.

Макрокоманды, составляющие макрос, вводятся в столбец Макрокоманды (рис.13.2). Для ввода макрокоманды можно нажать в этом столбце кнопку раскрытия списка макрокоманд и выбрать нужную. В правой нижней части окна макроса выводится краткая справка, содержание которой зависит от положения курсора в верхней части окна макроса.

В языке макросов можно организовать выполнение макрокоманды или набора макрокоманд только при выполнении некоторых условий. Условие задается с помощью логических выражений и вводится в строку макрокоманды в столбец Условие.

Использование в макросах ссылок на объекты.

При обработке данных в базе данных необходимо уметь правильно ссылаться на эти данные. Ссылки на формы, отчеты, их элементы управления формируются по определенным правилам.

Ссылаться на объекты можно по имени, но нужно учесть, что в Access объекты объединяются в семейства. Формы объединены в семейство Формы (Forms), отчеты – в семейство Отчеты (Reports). Поэтому ссылка на объект включает имя семейства и, через восклицательный знак, имя объекта. Например, для ссылки на форму необходимо записать так: Forms![Товары].

Рис.13.1.Окно нового макроса

Рис.13.2. Список макрокоманд в окне макроса

В ссылке на элемент управления вслед за именем объекта через восклицательный знак записывается имя элемента управления, заключенное в квадратные скобки. Например, в форме КАФЕДРА ссылка на элемент управления Надпись с именем Название записывается так: Forms![КАФЕДРА]! [Название].

Ссылка на подчиненную форму или отчет записывается так:

Forms![Имя формы]! [Имя подчиненной формы].Forms![Элемент подчиненной формы]

Структура некоторых макрокоманд.

1. Макрокоманда ОткрытьФорму. Позволяет открывать форму и отбирать данные. Аргументы макрокоманды: Имя формы (из списка выбрать имя), Режим (форма, конструктор, просмотр и др.), Имя фильтра (имя запроса на выбор данных), Условие отбора (условие на языке SQL) и др.

2. Макрокоманда Закрыть. Закрывает форму, отчет, запрос и т.д. Аргументы макрокоманды: Тип объекта (форма, отчет, таблица и др), Имя объекта (Выбирается из списка), Сохранение (да, Нет, Подсказка)

3. Макрокоманда ПрименитьФильтр. Отбирает данные в открытой форме. Аргументы макрокоманды: Имя фильтра (имя запроса на выборку), Условия отбора (выражение SQL без слова WHERE).

4. Макрокоманда ЗадатьЗначение. Проводит вычисления в элементах управления форм, отчетов. Аргументы макрокоманды: Элемент (элемент управления типа Поле), Выражение (Арифметическое выражение или значение).

5. Макрокоманда Печать. Печатает открытую форму, отчет. Аргументы макрокоманды: Распечатать (Все, Фрагмент, Страницы), Со страницы (Начальная страница печати), По страницу (Конечная страница печати), Разрешение (качество печати: например, среднее), Число копий.

6. Макрокоманда Выход. Осуществляет выход из Access. Аргументы макрокоманды: Параметры (Сохранить все, Подтверждение и др.).

Запуск макроса:

- из окна макроса - нажать кнопку Запуск на панели инструментов;

- из окна базы данных - нажать на вкладку Макросы, установить курсор на имени макроса и нажать кнопку Запуск;

- из любого окна Access - следует выполнить команды

Сервис Макрос Выполнить макрос Указать имя макроса ОК

- автоматический запуск макроса при открытии базы данных - задать ему имя AutoExec.