У наведених нижче розділах наведено корисну інформацію про VBA. Імена об'єктів надаються, тому їх можна легко перевірити в базі даних Northwind 2.0 Starter Edition.
VBA (Visual Basic for Applications) – це мова програмування, яка використовується в усіх продуктах Microsoft 365, а не тільки в Access. У ній здебільшого описано документацію розробника Access.Щоб почати, див. статтю Загальні відомості про програмування Access.
Під час пошуку відомостей обов'язково знайдіть конкретні приклади Access і додайте Microsoft Access до пошукового запиту. Часто рішення для інших продуктів Microsoft 365 працюють, але можуть потребувати змін.
Microsoft Access – це зрілий продукт. Це означає, що є багато прикладів там, що чудово підходить для вас. Це також означає, що старі книги з програмування Access все ще можна переглядати. Багато старих книг все ще доступні на сайтах книг, що використовуються, за певною частиною початкової вартості.
Файли Microsoft Access – це файли Microsoft 365. Файли Microsoft 365 мають бути в надійному розташуванні або ввімкнути їхній вміст. Ці елементи вважаються безпечними, оскільки їх створено або вони походять із надійного джерела. Ця перевірка виконується щоразу, коли ви відкриваєте будь-який файл Microsoft 365. Ми називатимемо це як надійні або ввімкнені звідси. Якщо нову версію програми буде випущено та відкрито з ненадійного розташування, процес ввімкнення вмісту повториться. Докладні відомості див. в статті Надійні розташування для файлів Microsoft 365, Вибір надійності бази даних і Додавання, видалення або змінення надійного розташування в Microsoft 365.
Макроси, функції та підрядки – це спосіб реалізації бізнес-логіки в базі даних Access.
Елементи керування у формі (наприклад, кнопки, текстові поля, підписи тощо) можуть використовувати свої події (наприклад, клацнувши елемент керування), щоб ініціювати інші процеси, наприклад додавання, видалення записів або відкриття форм. Ці процеси можна реалізувати за допомогою макросів або VBA. У Northwind використовуються переважно макроси, а також деякі vba. Докладні відомості див. в статті Дія макросу "Виконати код".
Деякі типи елементів керування мають вбудовані майстри, які автоматично створюють макроси. Наприклад, якщо додати кнопку до форми, відкриється майстер, який запропонує кілька варіантів функціональності для цієї кнопки. Якщо додати поле зі списком, відкриється майстер, який можна настроїти на пошук певного запису у формі.
Область переходів – це основний спосіб перегляду та доступу до всіх об'єктів бази даних, яка за замовчуванням відображається в лівій частині вікна Access. Область переходів Northwind 2.0 Starter Edition налаштовано. Ми створили спеціальну категорію Northwind Starter 2.0. Це дає змогу впорядковувати об'єкти за функціональною областю. Докладні відомості див. в статті Настроювання області переходів.
Важливо дізнатися про масштаб і видимість в Access і Microsoft 365. Область – це доступність змінної, константи або процедури для використання іншою процедурою. Є три рівні визначення області: рівень процедури, рівень приватного модуля та рівень загальнодоступного модуля. Ви визначаєте область змінної, коли оголошуєте його. Радимо оголосити всі змінні явно, щоб уникнути помилок, пов'язаних із конфліктом іменування, між змінними з різними областями. Усі модулі мають дві директивні інструкції: Option Compare Database і Option Explicit. Докладні відомості див. в статті Загальні відомості про область і видимість, загальнодоступну інструкцію, приватну інструкцію, статичну інструкцію та Розуміння терміну служби змінних.
Іноді потрібно, щоб змінна існувала після того, як створений об'єкт виходить за межі області. Це можна зробити трьома основними способами: загальнодоступні змінні, тимчасові змінні та збереження значень у локальній таблиці. Кожен з них має плюси і мінуси. Багато розробників використовують поєднання з них.
Загальнодоступні змінні та тимчасові змінні існують для поточного сеансу та виходять з області, коли програму закрито. Що робити, якщо потрібно зберігати певні змінні користувача в сеансах? Ці типи значень можна зберігати в локальній таблиці. У Northwind 2.0 Starter Edition ми маємо ці значення в таблиці SystemSettings. Наприклад, значення в таблиці – "ShowWelcome". Це значення вказує на те, чи бажаєте ви бачити екран привітання щоразу, коли ви входите в систему.
Якщо ви використовували вбудовані в Access майстри елементів керування, ви знаєте, що в разі створення макросу часто взагалі немає обробки помилок і якщо створено VBA, це може бути обмежено функцією MsgBox ( Err.Description).
У Northwind 2.0 Starter Edition ми реалізували те, що називається глобальним обробником помилок. Помилки, які виникають під час будь-якої процедури, викликають функцію на глобальному рівні, щоб відобразити помилку. Велика перевага полягає в тому, що код узгоджений, і якщо повідомлення потрібно змінити, наприклад, відображається номер помилки або журналювання помилки у файлі, це можна зробити лише в одному розташуванні.
clsErrorHandler – це модуль класу, який впроваджує код обробки помилок. Модуль класу зберігає всі основні та допоміжні функції в одному блоці, що робить код більш інкапсульованим. Зрештою макрос AutoExec викликає функцію запуску в modStartup, створює екземпляр clsErrorHandler і зберігає його як глобальну змінну, щоб її можна було використовувати в усій програмі.
Насправді, код обробки помилок у процедурах настільки узгоджений, що ми змогли створити все це менш ніж за п'ять хвилин за допомогою деякого вигадливого коду VBA, який обладнав кожну процедуру за допомогою належного обробника помилок. Цей код не входить до шаблону.