Інструментальне середовище Visual Basic for Applications
Отже, основними компонентами програми на мові VBA є процедури (підпрограми - Sub і функції - Function). Процедури - це групи інструкцій, які спільно виконують певне завдання. Вони являють собою фрагменти програмного коду, укладені між операторами Sub і End Sub або між операторами Function і End Function. Інструкція - це один рядок тексту в програмному коді. Підпрограми Sub можуть приймати різні параметри, але вони не повертають значень.
Якщо підпрограма не містить параметрів, то її оператор повинен включати порожній набір круглих дужок. Існують два типи процедур - процедури властивостей і процедур обробки подій. Процедури, які можна пов'язати з виконанням самих різних подій, наприклад, з відкриттям форми або звіту, з клацанням мишею по кнопці в формі і так далі, називають процедурами обробки подій. Процедури обробки подій, які, як правило, використовуються в формах і звітах, ми і будемо розглядати в подальшому.
Процедура-функція Function схожа на підпрограму Sub, але відрізняється від неї тим, що може повертати деяке значення. Функція може приймати різні параметри. Якщо вона не містить параметрів, то оператор Function повинен включати порожній набір круглих дужок. Ключові слова Private і Public перед Function впливають на виконання функцій. Privat дає можливість застосовувати функцію тільки всередині конкретного модуля, а Public дає можливість застосовувати її в інших модулях програми. Надалі ми також будемо розглядати процедури-функції Function.
Як випливає з малюнка 2, у вікні Project об'єкти додатків діляться на три групи:
- Microsoft Access Class Objects - об'єкти класів Access, які включають модулі форм і звітів (модулі об'єктів);
- Modules - стандартні модулі;
- Class Modules - модулі класів (окремі модулі класів, які відображаються на вкладці Модулі вікна бази даних) або модулі для користувача класів.
На малюнку 3 представлена заготовка процедури Click обробки події (натискання кнопки "Пуск") для об'єкта cmdPusk, яка доступна тільки всередині модуля форми FormaP або модуля класів. На скріншоті 4 представлена процедура-функція стандартного модуля "Перетворений макрос - Откр_запрос".