Глава 12. Объектно-ориентированное программирование.

Глава 12. Объектно-ориентированное программирование.

В этой главе ...

~ Концептуализация объектов

~ Понимание свойств, методов и событий - главных компонентов VBA-объектов

~ Работа с объектными моделями

~ Использование форм как объектов

~ Выяснение и установка свойств объектов

~ Вызов методов

~ Использование ссылок на объект для идентификации объекта, с которым нужно работать

~ Присваивание переменным ссылок на объект

~ Создание своих собственных объектов с помощью модулей классов

~ Эффективное использование объектов с помощью операторов For Each ... Next и With

Главным преимуществом VBA является статус объектно-ориентированного средства разработки приложений. Понимание объектов лежит в основе программирования в VBA, особенно когда дело касается создания пользовательских диалоговых окон и использования возможностей ведущего VBA-приложения. В этой главе мы сначала очертим объектное поле на уровне понятий, а затем займемся приемами программирования с использованием объектов. Объекты стали неотъемлемыми элементами ландшафта VBA.

Именно через объекты вы получаете доступ к функциональным возможностям того VBA приложения, в котором работаете. Точно так же вы можете получить доступ к объектам других VBA-приложений и даже создать свои собственные объекты.

Что такое объект

Можно, конечно, привести формальное определение объекта в VBA, но, я думаю, проще объяснить понятие объекта с помощью нескольких неформальных примеров, используя их функциональные возможности.

Объекты как компоненты VBA-приложений

Начать изучение объектов лучше всего с рассмотрения их как частей VBA приложения и его документов. Любой элемент графики (shape) в Visio является объектом, равно как и любая связь (connect), установленная между двумя такими элементами графики (рис. 12.1). Точно так же объектами являются и слои, на которых размещаются элементы графики, и страницы, на которых располагаются слои. Объектом будет и сам документ, содержащий все эти страницы, слои, элементы графики и связи.

Рис. 12. l Примеры объектов VBA

Подобным образом к объектам Excel относятся ячейки, в которых размещаются данные и формулы, именованные диапазоны ячеек, диаграммы, украшающие многие документы, отдельные рабочие листы и целые рабочие книги. И во всех приложениях Microsoft Office - как и во многих других VBA-приложениях- меню и панели инструментов, а также пункты этих меню и кнопки в этих панелях инструментов тоже являются объектами.

Объекты VBA существуют в иерархии, в которой объекты одних типов содержатся в объектах других типов. Подобные иерархии объектов рассматриваются ниже, в разделе

"Что такое объектная модель", а пока что мы сконцентрируем внимание на обсуждении понятия индивидуального объекта.