Visual basic for applications (vba)

Вид материалаДокументы

Содержание


Глава 6.3 Объектные модели
Объектная модель VBA
Объектная модель Microsoft Office 2000
Объектная модель Microsoft Word 2000
Объектная модель Microsoft Excel 2000
Подобный материал:
1   2   3   4   5

Глава 6.3 Объектные модели


Авторы данной книги не ставили перед собой задачу пол­ного описания программирования на языке Visual Basic. Ос­новной задачей было представить читателю средство про­граммирования VBA в пакете Microsoft Office. Для углублен­ного изучения теории программирования, а также подробного рассмотрения среды разработки и языка программирования Visual Basic 6.0 рекомендуется обратиться к книге издательст­ва «Фолио» "Программирование в среде Windows".

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

Каждая структурная единица любой объектной модели представляет собой либо отдельный объект, либо набор или семейство объектов. В свою очередь, набор (collection) также является объектом, но в то же время он является совокупно­стью объектов одинакового типа.

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


477

Если необходимо указать ссылку на тот или иной объект ие­рархической структуры для последующего выполнения каких-либо действий (вызов методов или изменение свойств), то в этом случае следует указывать все предшествующие ему объекты ие­рархии, разделяя их точками. Например, чтобы активизировать документ a.doc, необходимо в программном коде указать сле­дующую команду:

Application.Documents("a.doc").Activate

В данной команде используется ссылка на документ a.doc, который представляет собой объект из набора Documents.

Объектная модель VBA


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




478


Объектная модель Microsoft Office 2000


Иерархия объектной модели Office представлена на рис. 6.22. При этом одно название в структуре, например, As-


479

sistant. означает наличие объекта на данном уровне иерар­хии, в то время как двумя названиями, например, Command-Bars (CommandBar), обозначаются набор объектов (название перед скобками) и объект из набора (название в скобках). Вер­тикальные линии связи между элементами указывают на раз­ные уровни иерархии.

В таблице 6.21 приведено описание основных объектов данной модели.






480


Объектная модель Microsoft Word 2000


Иерархия объектной модели Word реализована в виде структуры объектов, которые подчинены объекту Applica­tion, представляющему собой приложение Word. Рассматри­ваемая иерархическая структура состоит из нескольких уров­ней. Все объекты первого уровня представлены на рис. 6.23;

описание основных объектов приведено в таблице 6.22.

Некоторые объекты первого уровня иерархии объектной модели Word представляют собой структуру, состоящую, в свою очередь, еще из несколько уровней. В частности такими объектами являются AutoCorrect, Document, Selection, Template и Window (см. рис.6.23).

На рис. 6.24 представлена иерархия объекта Document, ис­пользуемого для обработки открытых документов Word. Опи­сание основных объектов, входящих в данную структуру, при­ведено в таблице 6.23.


481






482




483






484



Описание свойств и методов объекта Document приведено в таблицах 6.24 и 6.25, соответственно.




485




486



Возможные события для объекта Document приведены в таблице 6.26.


Объектная модель Microsoft Excel 2000


Иерархия объектной модели Excel реализована в виде структуры объектов, которые подчинены объекту Applica­tion. представляющему собой приложение Excel. Данная ие­рархическая структура состоит из нескольких уровней. Все объекты главных уровней представлены на рис. 6.25; описание основных объектов приведено в таблице 6.27.


487

Некоторые объекты главных уровней иерархии объектной модели Excel представляют собой структуру, состоящую, в свою очередь, еще из нескольких уровней, которые не отобра­жены на рис. 6.25. В частности такими объектами являются Worksheet и Chart.

На рис. 6.26 представлена иерархия объекта Worksheet, используемого для обработки рабочих листов в той или иной рабочей книге Excel. Описание основных объектов, входящих в данную структуру, приведено в таблице 6.28.






488






489





В таблицах 6.29 - 6.31 приведено описание основных свойств, методов и событий для объекта Workbook.


490




491








492

Объектная модель Microsoft Access 2000


Иерархия объектной модели Access реализована в виде структуры объектов, которые подчинены объекту Applica­tion, представляющему собой приложение Access. Рассмат­риваемая иерархическая структура представлена на рис. 6.27;

описание основных объектов приведено в таблице 6.32.




493




494