×
Traktatov.net » Excel. Трюки и эффекты » Читать онлайн
Страница 34 из 146 Настройки

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

На рис. 1.5 представлена значительно упрощенная структура объектов, доступ к которым имеет программист на VBA.

Как видно из приведенного рисунка, корневым (главным) объектом, доступным в VBA, является Application. Используя ссылку на этот объект, можно манипулировать как самим запущенным приложением Excel, так и такими объектами, как рабочие книги, листы, диаграммы, окна, меню, панели инструментов, – Application предоставляет доступ ко всем объектам Excel.

Объект Application содержит большое количество вложенных объектов. Они могут быть и объектами, с которыми можно взаимодействовать непосредственно (как Assistant – объект для работы с помощником), и представлять собой коллекции, содержащие другие объекты.

Рис. 1.5. Структура объектов Microsoft Excel


Ниже приведено описание некоторых особенно часто используемых коллекций:

• Cells – коллекция, содержащая все ячейки рабочего листа;

• CommandBars – коллекция, содержащая все меню и панели инструментов;

• Comments – коллекция, содержащая все примечания рабочего листа;

• ChartObjects – коллекция, содержащая все объекты-контейнеры внедренных в рабочий лист диаграмм (по одному объекту на каждую внедренную диаграмму);

• Charts – коллекция, содержащая все листы диаграмм рабочей книги;

• Dialogs – коллекция стандартных диалоговых окон Excel;

• Sheets – коллекция, содержащая все листы книги;

• Windows – коллекция всех отображаемых в Excel окон;

• Workbooks – коллекция, содержащая все открытые в Excel рабочие книги;

• Worksheets – коллекция, содержащая все рабочие листы книги.

Объект Selection (а вернее, свойство объекта Application) предоставляет доступ к данным, выделенным на активном листе рабочей книги. В Selection могут содержаться ссылки на объекты различного типа. Тип зависит от того, что именно выделено на листе (например, если выделены ячейки, то тип объекта Selection – Range).

Особого рассмотрения заслуживает объект Range. Он может содержать одну ячейку, диапазон ячеек или несколько диапазонов ячеек. Этот объект используется при необходимости получения или изменения значений в ячейках таблицы.

Подробная информация о наиболее часто используемых в книге объектах Excel приведена в приложении.

Доступ к объектам Excel из программы

Для доступа к объектам Excel в программах на VBA можно использовать глобальную ссылку на объект Application, которая имеет такой же идентификатор – Application. Например, получение ссылки на выделенные данные может выглядеть следующим образом:

Set objSel = Application.Selection

Необходимо отметить, что использование ссылки с именем Application во многих случаях подразумевается по умолчанию, поэтому предыдущий пример можно записать так:

Set objSel = Selection

Аналогичным образом осуществляется доступ к остальным объектам. При этом с коллекциями Excel, такими как Workbooks, Worksheets и пр., работают как с обычными коллекциями VBA, содержащими ссылки на объекты:

Worksheets(1).Name = «Sheet 1»

Объектом Application предоставляются также ссылки на активную рабочую книгу, активный рабочий лист этой книги, активную ячейку листа, активную диаграмму и т. д. (подобные ссылки объекта Application, а также других объектов рассмотрены в приложении). Эти ссылки нужны для обеспечения возможности быстрого использования информации активного объекта, например: