Программирование на языке VBA

Язык VBA стал общим инструментом для всех приложений Microsoft Office, позволяющим решать любые задачи программи­рования, начиная от автоматизации действий конкретного пользователя и кончая разработкой полномасштабных приложений, ис­пользующих Microsoft Office как среду разработки.

Модель программирования в Access является событийно-управляемой, т. е. в процессе работы приложения возникают события, которые запускают специальные программы — обработчики со­бытий. Большое количество разнообразных событий определено в таких объектах Access, как формы, отчеты и элементы управле­ния в них.

Программный доступ к постоянным (хранимым в приложении Access) и временным объектам осуществляется с помощью объект­ных моделей VBA.

Объекты и семейства VBA

Язык VBA является объектно-ориентированным языком про­граммирования. Стандартные объекты VBA представляют собой основные средства манипуляции с данными Microsoft Access и других приложений семейства Microsoft Office. Знание технологии объектно-ориентированного программирования и состава объект­ных моделей VBA позволяет разрабатывать профессиональные приложения, выполняющие всю необходимую обработку данных.

Объект (object) — абстракция, которой оперируют в объект­но-ориентированных языках программирования. Объект обладает собственными характерными признаками, отличающими его от других объектов; кроме того, объект имеет свое поведение.

Класс (class) — описание совокупности однотипных объектов. Класс можно сравнить с типом данных, где переменной является объект. В этом случае говорят, что объект представляет собой эк­земпляр определенного класса.

Свойство (property) — отдельная характеристика объекта или класса. Свойство объекта может принимать определенное значе­ние.

Метод (method) — процедура (или функции) объекта или клас­са. У объекта или класса может быть определенное количество методов и свойств. Методы определяют поведение объекта. В объек­тно-ориентированных языках программирования поведение при­ложения определяется повелением созданных в нем объектов.

Объект может реагировать на определенное событие (event), происходящее в процессе работы приложения и влияющее на объект. Совокупность событий, на которые объект способен реа­гировать, определяется создателем класса, экземпляром которого является данный объект. Реакцией объекта на произошедшее со­бытие может быть выполнение им некоторых заданных действий — специальной процедуры, которая называется процедурой обра­ботки события. Любому событию объекта может быть назначена некоторая процедура его обработки.

Семейство (collection) — упорядоченный набор однотипных объектов, т.е. экземпляров одного класса. Семейство тоже являет­ся объектом, и одним из методов этого объекта является процеду­ра, возвращающая ссылку на конкретный объект в семействе. Од­ним из свойств семейства является число объектов, хранящихся в нем.

Объектная модель (object model) — совокупность взаимосвя­занных объектов, описывающих программную систему.

В VBA определены специальные объектные модели для каждо­го компонента семейства Microsoft Office и объектные модели, общие для всех компонентов Microsoft Office. С помощью объект­ных моделей, определенных в VBA, осуществляется управление приложениями Microsoft Office.