Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекцій ЕКОНОМІЧНА ІНФОРМАТИКА.doc
Скачиваний:
26
Добавлен:
28.10.2018
Размер:
24 Mб
Скачать

3.9. Створення й застосування макросів

Microsoft Access - це не тільки набір таблиць, що зберігають взаємозалежні дані, але й набір засобів для роботи з даними бази, таких як запити, форми, звіти, які можуть бути названі об'єктами додатка. За допомогою кнопкових форм може бути створена панель керування додатком, що забезпечує користувачеві простий доступ до всіх його функцій. Домогтися цього без використання засобів програмування практично неможливо. Найпростішою мовою програмування і є мова макросів. Його вивчення може розглядатися як гарний спосіб введення в програмування мовою VBA.

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

- для відкриття (або закриття) будь-якої таблиці, запиту, форми або звіту в будь-якому доступному режимі;

- для виконання запиту на вибірку або запиту на зміну;

- для виконання дій залежно від значень у базі даних, формі або звіті;

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

- для застосування фільтра й запуску додатків;

- і багато чого іншого.

Макроси можуть бути запущені безпосередньо з вікна бази даних або вікна макросу. Якщо макрос залежить від події у формі або звіті, його потрібно зв'язати з відповідною подією й запускати при виникненні цієї події.

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

Створення простого макросу

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

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

Макрокоманди, що становлять макрос, уводяться в стовпець Макрокоманда (рис.3.18). Для уведення макрокоманди можна нажати в цьому стовпці кнопку розкриття списку макрокоманд і вибрати потрібну. У правій нижній частині вікна макросу виводиться коротка довідка, зміст якої залежить від положення курсора у верхній частині вікна макросу.

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

Використання в макросах посилань на об'єкти

При обробці даних у базі даних необхідно вміти правильно посилатися на ці дані. Посилання на форми, звіти, їхні елементи керування формуються за певними правилами.

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

Рис. 3.17 - Вікно нового макросу

Рис.3.18 - Список макрокоманд у вікні макросу

У посиланні на елемент керування слідом за ім'ям об'єкта через знак оклику записується ім'я елемента керування, укладене у квадратні дужки. Наприклад, у формі КАФЕДРА посилання на елемент керування Надпись із ім'ям Название записується так: Forms![КАФЕДРА]! [Название].

Посилання на підлеглу форму або звіт записуються так:

Forms![Ім'я форми]! [Ім'я підлеглої форми].Forms![Елемент підлеглої форми]

Структура деяких макрокоманд

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

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

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

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

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

6. Макрокоманда Выход. Здійснює вихід з Access. Аргументи макрокоманди: Параметры (Сохранить все, Подтверждение й ін.).

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

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

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

- з будь-якого вікна Access - варто виконати команди:

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

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

Виконання макросу з настанням події

Поряд з розглянутими способами запуску макросів, в Access передбачена можливість запуску макросу при виникненні деякої події. Оскільки події визначені у властивостях форм, їхніх елементів і звітів, користувач указує ім'я макросу в рядку відповідної події у вікні властивостей цих об'єктів. При виникненні цієї події макрос запускається автоматично.

Створення кнопки запуску макросу у формі. Можна передбачити запуск макросу користувачем з форми шляхом натискання кнопки. Ця кнопка повинна бути пов'язана з макросом. Для цього у властивостях кнопки на вкладці События в рядку Нажатие кнопки задається ім'я макросу.

Для створення кнопки в режимі Конструктор, що запускає конкретний макрос, необхідно:

- клацнути на кнопку Кнопка на панелі елементів і намалювати кнопку у формі (кнопка Мастера элементов на панелі елементів не натиснута);

- зробити відповідний напис на кнопці;

- нажати кнопку Свойства на панелі інструментів і у вікні властивостей на вкладці События в рядку Нажатие кнопки потрібно внести ім'я макросу.

Кнопка для запуску макросу може бути створена у формі й за допомогою майстра. Для цього потрібно нажати на панелі елементів кнопки: Мастера элементов і Кнопка. Після креслення кнопки у формі відкривається вікно Создание кнопки, у якому необхідно вибрати категорію Разное й дія Выполнить макрос. Потім вибрати макрос, який буде запускатися при натисканні кнопки.

На рис. 3.19 представлений додаток Access, робота якого здійснюється за допомогою відповідних макросів.

Рис. 3.19 - Додаток Access «Обменный пункт»