Об'єктні моделі Microsoft Office

В VBA визначені об'єктні моделі для кожного сімейства Microsoft Office і об'єктні моделі, загальні для всіх додатків. Кожний додаток Microsoft Office являє собою об'єктні моделі у вигляді бібліотеки об'єктів, що може бути використана іншими додатками:

- бібліотека об'єктів Microsoft Access (Microsoft Access Object Library 10.0);

- бібліотека об'єктів доступу до даних (Microsoft DAO 3.6 Object Library);

- бібліотека об'єктів ActiveX (Microsoft ActiveX Data Objects 2.6 - ADO);

- бібліотека об'єктів Visual Basic (Microsoft Visual Basic for Application);

- бібліотека об'єктів Microsoft Office (Microsoft Office 10.0 Object Library.

 

Моделі об'єктів Microsoft Access

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

На верхньому рівні ієрархії розташовується об'єкт Application, що дозволяє дати інформацію про додаток, що виконується. Application включає: сімейства форм і звітів (Forms, Reports ), посилань (References), модулів (Modules), метод Docmd і ін.

Сімейство форм і звітів – це сімейство відкритих форм і звітів. Воно включає сімейство елементів керування (Controls) і властивостей (Properties).

Об'єкт Docmd має у своєму розпорядженні методи, які дозволяють виконати макрокоманди Access із програми VBA.

Звертання до об'єктів бібліотек із процедур і функцій Access здійснюється за встановленими на них посиланнями. Список установлених посилань можна переглянути й змінити у вікні, що відкривається командами Tools ® References у вікні редактора VBA.

 

Моделі об'єктів доступу до даних DAO і ADO

 

Стандарти DAO і ADO забезпечують програміста схожим набором інструментів керування. DAO – це попередній, більш ранній стандарт засобів керування базою даних. Стандарт ADO представляє могутніші інструменти і його застосування приводить до скорочення програмного коду. Нижче представлені фрагменти лістингів програмного коду з бібліотекою об'єктів доступу до даних DAO і ADO для рішення одного і того ж завдання – відкриття записів таблиці Отдел у поточній базі даних.

 

Sub DAO_приклад ()

Dim Db As Database

Dim Rs As DAO.Recordset

Set Db As CurrentDb()

Set Rs = DB.OpenRecordset(“Отдел”)

Sub ADO_приклад ()

Dim Rs As New ADODB.Recordset

Rs.Open “Відділ”, CurrentProject.Connection, adOpenKeySet, _

AdLockOptimistic

 

Пояснення записів у лістингах:

Об'єкт класу ADODB – це OLE-Сервер. Його інтерфейс може використовуватися будь-якою програмою, написаною мовою VBA.

Connection це блок інформації, що вказує Access, як спілкуватися з базою даних. Завдяки Connection можна спілкуватися з базами даних, створених фірмами Microsoft, MS-SQL Server, Oracle і ін.

CurrentProject.Connection – указує на поточну базу даних.

adOpenKeySet, adLockOptimistic - параметри, що вказують на тип курсора й тип блокування відповідно.

Константи, які показують, у якій бібліотеці вони описані мають наступні префікси: ac, db, ad, vb. Наприклад, ac бібліотека Access і т.д.

 

Посилання на об'єкти

Для звертання до об'єкта існує одне загальне правило: потрібно простежити шлях в ієрархії об'єктів, починаючи з об'єктів самого верхнього рівня. Головним в ієрархії об'єктів є об'єкт Application. Він містить посилання на всі інші об'єкти й сімейства об'єктів Microsoft Office (надає до них доступ). Об'єкт Application представляє активний додаток Microsoft Access і містить всі методи й властивості, які можна застосовувати до активного додатка. Наприклад, якщо потрібно звернутися до форми, що входить у сімейства Forms і має назву Співробітники, потрібно написати наступний вираз:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: