You are on page 1of 4

Лабораторна робота № 5

Створення макросів
Мета: навчитися створювати макроси в Access для різних задач.

МЕТОДИЧНІ ВКАЗІВКИ

Макрос в Access — це інструмент, який дозволяє автоматизувати задачі і добавляти функції


в форми, звіти і інші елементи управління. Наприклад, добавивши на форму кнопку, можна
зв'язати її з макросом, який буде містити команди, що будуть виконуватися при її натисненні.
В Access можна розглядати макроси як спрощену мову програмування, код на якій
створюється у вигляді списку необхідних команд (макрокоманд).
Макрос може бути автономним чи вбудованим.
Автономний макрос - це такий макрос, який є об'єктом бази даних.
Вбудований макрос створюється безпосередньо як обробка певної події для елементів
управління (наприклад, при створенні обробки події натиснення на кнопку або після введення
даних в поле вводу).
В Microsoft Access макроси, що приєднані до об'єктів інтерфейсу, такі як кнопки, текстові
поля, форми, звіти, називаються макросами користувацького інтерфейсу.
Починаючи з Access 10, з’явилися так звані макроси даних. Макроси даних і їх дії
вкладаються у визначені події з таблицями, наприклад добавлення, оновлення чи вилучення
даних.
Створення макросу починається у вкладці Создать у розділі Другие, де необхідно вибрати
вкладку Макрос (Macros). Після цього відкривається конструктор макросу.

Основною складовою макросу є макрокоманди. Їх можна обирати з випадаючого списку.


Після слід вказати параметри для обраної макрокоманди. Макрос може містити як одну
макрокоманду, так і набір макрокоманд. У випадку, коли макрокоманд декілька, при запуску
макросу вони виконуються одна за одною.
Справа конструктор макросу містить каталог макрокоманд, згруповані за призначенням.
Перша група містить засоби для управління макрокомандами. До них належать вкладені макроси,
група макросів, умова виконання макрокоманд і примітки.
Кожен макрос може містити вкладені макроси. Вкладений макрос може бути запущений за
своїм ім'ям такими макрокомандами як ЗапускМакроса або ПриОшибке. Щоб викликати
вкладений макрос, необхідно використати такий синтаксис:
<ім'я_макросу>.<ім'я_вкладеного_макросу>
Якщо необхідно, щоб певні макрокоманди виконувалися лише за певних умов, то слід
використати умовний блок Если. Його ж можна доповнити ще блоками Иначе та Иначе если.
Приклад 1. Макрос для авторизації.
Розглянемо макрос для авторизованого
входу в додаток. Нехай існує форма Form1 з
полями введення edLogin та edPassword. Макрос
перевірятиме, чи правильно введені логін та
пароль, і у випадку коректного введення
відкриватиме головну форму Main_Form. У
випадку ж помилкового введення чи то логіну, чи
то паролю виводитиметься повідомлення про
помилки.
Для перевірки введених значень
використано блоки Если...Иначе. Для відкриття
форми використано макрокоманду
ОткрытьФорму. Для виводу повідомлень про
помилки використовується макрокоманда Окно
сообщения. Також використано макрокоманду
КЭлементуУправления для передачі фокусу
відповідному елементу керування.

Для більш зрозумілого запису макросу, що складається з багатьох макрокоманд, можна


використати блок для групування Группа. Наприклад, можна об'єднати всі макрокоманди, які
відкривають і фільтрують форму, у групу з ім'ям “Відкриття і фільтрація форми”. Це дозволяє
краще зрозуміти, які команди зв'язані одна з одною. Блок Группа не впливає на те, як
виконуються макрокоманди, і групу неможливо викликати або запустити окремо. Її основне
призначення — присвоєння мітки групі команд, яка робить макрос більш читабельним. Крім того,
при редагуванні великого макросу групу макрокоманд можна згорнути.

Макроси даних
Макроси даних дозволяють добавляти логіки в події, які відбуваються з таблицями, такі як
при добавленні, оновленні та вилученні даних. Це так звані “тригери” (процедури, які
виконуються при описаних вище діях з даними). Такі макроси використовувати доцільно для
перевірки достовірності даних в таблиці. Макроси даних можуть виконуватися одразу після однієї
з подій (добавлення, вилучення, оновлення) або одразу перед вилученням чи оновленням.
Управління макросами даних здійснюється у вкладці Таблица при перегляді таблиці в
режимі таблиці і не відображаються в розділі макросів бази даних.
Щоб прикріпити макрос даних до однієї з подій, необхідно виконати наступні дії:
– відкрити необхідну таблицю, для якої буде створений макрос даних, в режимі таблиці;
– у вкладці Таблица у групі До або После обрати подію, на яку буде створено макрос
(наприклад, щоб створити макрос даних, який буде запускатися після вилучення запису з
таблиці, необхідно обрати После удаления);
– в результаті відкриється конструктор макросу, де необхідно ввести відповідні
макрокоманди.
Якщо до події вже прикріплено макрос, то відповідна кнопка у стрічці виділена.
Приклад 2. Макрос даних після оновлення.

Приклад 3. Макрос даних до оновлення.

Макрос AutoExec
Якщо кожен раз при запуску бази даних необхідно виконувати певну послідовність дій, то
можна створити спеціальний макрос, який це буде виконувати.
Для цього необхідно задати ім'я даному макросу AutoExec.
Щоб не використовувати макрос AutoExec і інші параметри при завантаженні бази даних,
необхідно утримувати клавішу SHIFT під час запуску бази даних.

Макрос AutoKeys
Можна назначити макрокоманду чи набір макрокоманд визначеній комбінації клавіш. Для
цього необхідно створити групу макросів з ім'ям AutoKeys.
Іменами макросів у вкладених макросах будуть самі комбінації клавіш, задані згідно
певного синтаксису.
Приклад 4. Макрос для назначення клавіш.
ХІД РОБОТИ
1. Створити макрос для авторизованого входу у додаток бази даних.
2. Створити макрос AutoExec для запуску форми авторизації.
3. Створити макрос AutoKeys для назначення комбінацій клавіш для операцій відкриття
таблиць, форм пошуку, звітів.
4. Створити макроси даних для таблиць.

You might also like