Основные понятия объектно-ориентированного программирования
Объект (Object) – объединение данных и процедур их обработки в единое целое. Все визуальные объекты, такие как листы, ячейки, формы, кнопки и т.п. являются объектами VBA.
Класс (Class) – описание однотипных объектов. Класс определяет имя объекта, свойства объекта и методы (действия), выполняемые над объектом. Конкретный объект есть экземпляр класса.
Семейство (Collection) – набор однотипных объектов одного класса. Существует другое название семейства – коллекция. Само семейство является объектом. Каждый элемент семейства нумеруется и может быть идентифицирован по номеру или имени
Пример
Application.ActiveWorkbook.Worksheets(1) – первый лист в активной книге
Application.Wоrkbooks(“Заказ.xls”).Worksheets(“Клиенты”) – лист “Клиенты” в рабочей книге “Заказ”
Все объекты имеют фиксированный набор свойств и методов.
Свойства (Properties) – множество характеристик объекта. Изменяя значение свойства можно управлять объектом.
Ссылка на свойство ИмяОбъекта.Свойство
Пример
Application.ActiveWorkbook.Worksheets(1).Caption = “Клиенты”
Worksheets(“Клиенты“).Range(“A2″).Value = “Фамилия”
Метод – действие, совершаемое над объектом. Один и тот же метод можно применять ко всем объектам семейства.
Вызов метода ИмяОбъекта.Метод
Пример
Range(“A2:C3″).Clear – очистить диапазон A2:C3
Событие – действие, распознаваемое объектом. Множество событий, на которые реагирует объект, определяется разработчиком класса.
Реакцией объекта на событие является процедура обработки события.
Модель объектов приложения Excel
Обращение к объектам
Существуют три способа указания объектов.
- Указание полного имени
- Сокращённые ссылки
- Объектные переменные
Методы указания ссылок
При использовании любого способа можно применять несколько методов указания ссылок на конкретный элемент в семействе
- Ссылка по имени
- Ссылка по аргументу
- Ссылка по индексу.
Правила создания ссылок
- Для разделения имён объектов ставится точка
- Для разделения имени семейства и имени объекта в семействе ставится восклицательный знак !
- При сокращении ссылки (имена семейств опускаются) между именами объектов, входящих в семейство используется восклицательный знак !
1 Указание полного пути
A Ссылка по имени
Application.Worksheets!Клиенты.Range(“Итого”).Formula = “=C2+C3+C4″
B Ссылка по аргументу
Application.Worksheets(“Клиенты”).Range(“A3″).Value = “Петров”
C Ссылка по индексу
Application.Worksheets(1).Cells(4, 1).Value = “Озеров”
UserForms(0).Controls(2).Value = 15
При использовании