О коллекциях

Иерархия объектов

Об объектах и коллекциях

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

Работая с кодом VBA, вы должны четко понимать назначение объектов и объектной мо­дели Excel. Целесообразнее рассматривать объекты с точки зрения иерархической структуры.

На вершине объектной модели находятся объект Application — в данном случае. Excel. Но если вы программируете в VBA, запуская VBE в Microsoft Word, то объектом Application будет выступать Word.

Объект Application (то есть Excel) содержит другие объекты. Ниже приведено не­сколько примеров объектов, которые находятся в объекте Application:

Workbooks (коллекция всех объектов Workbook —рабочих книг);

Windows (коллекция всех объектов Window — окон);

Addlns (коллекция всех объектов Addln — надстроек).

Некоторые объекты могут содержать другие объекты. Например, коллекция Workbooks состоит из всех открытых объектов Workbook, а объект Workbook включает другие объек­ты, некоторые из которых представлены ниже:

Worksheets (коллекция объектов Worksheet — рабочих листов);

Charts (коллекция объектов Chart —диаграмм);

Names (коллекция объектов Name — имен).

Каждый из этих объектов, в свою очередь, может содержать другие объекты. Коллекция Worksheets состоит из всех объектов Worksheet рабочей книги Workbook. Объект Worksheet включает другие объекты, среди которых следующие:

ChartObjects (коллекция объектов. ChartQb ject — элементов диаграмм);

Range — диапазон;

PageSetup — параметры страницы;

PivotTables (коллекция объектов PivotTable — сводных таблиц).

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

Одной из ключевых концепций в программировании на языке VBA являются коллекции. Коллекция — это группа объектов одного класса (и сама коллекция тоже является объектом). Как указывалось выше, Workbooks — это коллекция всех открытых, в данный момент объ­ектов Workbook. Worksheets — коллекция всех объектов Worksheet, которые содержит­ся в конкретном объекте Workbook. Вы можете одновременно управлять целой коллекцией объектов или отдельным объектом этой коллекции. Чтобы сослаться на один объект из кол­лекции, введите название или номер объекта в скобках после названия коллекции: Worksheets ("Лист1")

Если лист Лист1 — это первый рабочий лист в коллекции, то можно использовать сле­дующую ссылку.

Worksheets (1)

На второй лист в рабочей книге Workbook ссылаются как на Worksheets (2) и т.д.

Кроме того, существует коллекция с названием Sheets, состоящая из всех листов рабо­чей книги, рабочих листов и листов диаграмм. Если Лист1 — первый лист в книге, то на не­го можно сослаться так:

Sheets (1)


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



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