Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование VBA.pdf
Скачиваний:
374
Добавлен:
03.05.2015
Размер:
3.07 Mб
Скачать

22

2.8.2.Отображение объектной модели Excel

Для освоения способов управления Excel с помощью VBA необходимо ознакомиться с объектной моделью Excel. Объектная модель описывает объекты приложения и связи между ними. В объектной модели Excel представлено более 100 объектов. В большинстве случаев используются не более 20 объектов. Для отображения всех объектов Excel нужно выполнить следующие действия.

1.Открыть новую рабочую книгу.

2.Нажать комбинацию клавиш <Alt+F11>, чтобы открыть редактор

Visual Basic.

3.На вкладке Введите вопрос ответов ввести текст: Microsoft Excel Objects.

4.Нажать клавишу <Enter> и в списке тем щелкнуть на теме Microsoft Excel Object. Отобразится диаграмма объектной модели (рис. 1).

5.Щелкнуть на стрелке, направленной влево, над строкой Microsoft Excel Objects (стрелка окрасится в голубой цвет). Отобразятся объекты уровня рабочего листа (рис. 2).

Рис. 1. Объектная модель Excel

23

Рис. 2. Объектная модель Worksheet (Рабочий лист)

Вершиной иерархии объектной модели Excel является объект Application (Приложение). На следующем уровне иерархии объектной модели находится объект WorkBook (Рабочая книга), который совпадает с файлом рабочей книги Excel. Объект WorkBook содержит объекты более низкого уровня, в частности объект Worksheet (Рабочий лист). Объект Worksheet, в свою очередь, состоит из других объектов (рис. 2).

Среди более 100 объектов Excel в программировании на VBA большей частью используются следующие:

24

Application (Приложение)

WorkBook (Рабочая книга)

Worksheet (Рабочий лист)

Range (Диапазон)

Chart (Диаграмма)

Объект Application представляет саму программу Excel.

Объект WorkBook представляет рабочую книгу Excel, т.е. файл Excel. Объект Worksheet (Рабочий лист) – отдельная страница в рабочей книге, имеющая индивидуальное имя и предназначенная для хранения

данных и выполнения вычислений.

Рабочий лист в свою очередь состоит из ячеек. Ячейки представляет объект Range, который может состоять из одной или нескольких ячеек.

Одним из часто используемых объектов является объект Chart (Диаграмма). Все, действия, которые можно выполнить с диаграммами в Excel, можно запрограммировать в VBA.

2.8.2.1. Иерархия объектной модели

На вершине объектная модель Excel находится объект Application. Под этим объектом расположены другие объекты, среди которых находится WorkBook. В терминологии объектно-ориентированного программирования такое подчинение одного объекта другому называется вложением,

т.е. объект WorkBook вложен в объект Application, а объект Worksheet – в объект WorkBook.

2.8.2.2. Ссылка на объекты в коде VBA

Концепция вложения объектов широко используется при создании ссылок на объекты в коде VBA. Для полного определения объекта необходимо указать последовательно все уровни иерархии объектной модели. Например, чтобы сослаться на ячейку А1 на рабочем листе Лист1 рабочей книги Книга1, надо применить следующий код:

Application.Workbooks("Книга1").Worksheets("Лист1").Range("A1")

Если в программе нет ссылки на другое активное приложение, то объект Application можно не указывать, и предыдущая ссылка может быть представлена так:

Workbooks("Книга1").Worksheets("Лист1").Range("A1")

Если активной является Книга1, то объект Книга1 можно не указывать, и предыдущая ссылка может быть представлена так:

Worksheets("Лист1").Range("A1")

Аналогично, если активным листом является Лист1, то ссылка может быть записана так:

Range("A1")