Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаб_раб_базы_данных.doc
Скачиваний:
54
Добавлен:
21.11.2019
Размер:
2.59 Mб
Скачать

Лабораторная работа № 11 Создание макросов

Теоретические сведения

Для решения задач можно использовать средства программирования: язык макросов и язык Visual Basic for Applications (VBA). Макросы и модули на Visual Basic объединяют действия с объектами в единую программу. Макрос это программа, состоящая из последовательности макрокоманд. Макрокоманда это инструкция, ориентированная на выполнение определенного действия. Макрокомандой можно открыть форму, отчет, напечатать отчет, запустить на выполнение запрос, присвоить значение, создать свое меню для формы или отчета. Макрокоманда Задать Команду Меню позволяет выполнить любую заданную команду меню.

Язык макросов обеспечивает возможность выполнения большинства задач без программирования на Visual Basic. В Access имеются средства, обеспечивающие взаимодействие макросов с объектами при выполнении пользователем определенных действий. Это позволяет управлять выполнением программы извне. Пользователь инициирует выполнение макросов, автоматизирующих решение подзадач. Такой подход отличает программирование задач на языке макросов от традиционного программирования, при котором процессом управляет программа.

Наличие средств запуска программ пользователем не исключает возможности написания программ на языке макросов, которые могут решать задачи без вмешательства пользователя. Связи между макросами могут иметь сложную логическую структуру, для организации которой в макросе определяются условия выполнения макрокоманд. Пользователь запускает на выполнение главную программу, которая сама открывает объекты, выбирает и обрабатывает данные, вызывает другие макросы. При необходимости программа инициирует диалог с пользователем.

Формирование макроса осуществляется в диалоговом режиме и сводится к записи в окне макроса последовательности макрокоманд. Создание макроса начинается в окне БД, где надо выбрать закладку Макросы и нажать кнопку Создать, которая открывает окно макроса. Макрокоманды, составляющие макрос, вводятся в столбец Макрокоманда, для чего достаточно раскрыть список макрокоманд и выбрать нужную (рис. 46). Можно ввести имя макрокоманды с клавиатуры. Макрокоманда создается с аргументами, соответствующими выбранному объекту. Например, при перетаскивании таблицы создается макрокоманда Открыть Таблицу.

Рис. 46. Окно создания макроса

В нижней части окна можно сформировать Аргументы макрокоманды. Значения аргументов выбираются из списка. Справа выводятся пояснения для выбранного аргумента. В строки столбца Примечание вводится необязательный комментарий, описывающий результат выполнения макрокоманды. Каждая новая макрокоманда макроса добавляется к существующим макрокомандам записью в следующую строку бланка. Порядок размещения макрокоманд определяет последовательность их выполнения. После ввода всех макрокоманд надо сохранить макрос, воспользовавшись командой Файл > Сохранить.

Для выполнения макроса можно нажать кнопку панели инструментов Запуск. Если макрос закрыт, то надо в окне БД выбрать макрос и нажать кнопку Запуск в этом окне. Для просмотра и редактирования макроса надо выбрать его в окне БД и нажать кнопку Конструктор.

Группа макросов создается как один макрос, в котором содержатся несколько макросов, связанных с решением одной задачи или используемых при работе с одной формой. Для создания группы макросов нужно вызвать столбец Имя макроса. Он появляется, если нажать кнопку Имена макросов на панели инструментов. В ячейку столбца Имя макроса надо ввести имя первого макроса, входящего в группу. Затем записать макрокоманды, выполняемые в этом макросе. Аналогично вводятся имена других макросов и их макрокоманды. Макросы, созданные в одном окне, будут составлять группу. Имя, указанное при сохранении группы макросов, будет именем группы, которое выводится в списке макросов в окне БД. Для ссылок на макросы из группы используется синтаксис:

<Имя Группы Макросов>.<Имя Макроса>

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

В программе из макрокоманд можно организовать ветвления. Для организации ветвлений наряду с условиями можно использовать макрокоманды Остановить Макрос и Запуск Макроса (последняя позволяет создавать циклы).

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

В Access имеется возможность организовать выполнение макросов, используя механизм расширенной обработки событий (открытие отчета, ввод новых данных, перевод фокуса на другую запись или поле в форме, щелчок мышью). Существуют события формы, события элемента управления, события записи и раздела формы, события отчета и раздела отчета. Различные события вызывают различную реакцию системы, поэтому порядок выполнения макросов зависит от порядка возникновения событий и определяется действиями пользователя в формах.

Практическая работа

При выполнении лабораторной работы необходимо:

  • для заданной предметной области создать несколько макросов;

  • составить отчет по лабораторной работе.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]