Объектная модель MS Excel по общим принципам идентична объектной
модели MS Word. Эта модель также имеет иерархическую структуру, в кор-
не которой находится объект Application (Excel.Application), через который
обеспечивается доступ к любой коллекции или внутреннему объекту при-
ложения MS Excel или к компонентам открытых рабочих книг. Общая
структура объектной модели MS Excel представлена на рис. 1.4.
Рис. 1.4. Объектная модель MS Excel
Как уже сказано, вершиной объектной модели MS Excel является объект
Application, непосредственно включающий такие объекты и коллекции, как
Selection — текущий выделенный объект, WorkBooks — коллекция открытых
рабочих книг, коллекции различных элементов управления, диалоговых
окон и другие свойства приложения MS Excel. Объект Selection имеет свой-
ства текущего выделенного объекта, поэтому нет смысла рассматри-
вать здесь структуру модели этого объекта. Если выделена ячейка, то
Selection = Ячейка, если диаграмма, то Selection = Диаграмма. Когда выде-
лена область ячеек, Selection = Коллекции столбцов и строк. Коллекция
рабочих книг представляет собой список открытых рабочих книг, доступ к
которым осуществляется по индексу. Каждый элемент такой коллекции
представляет собой объект "рабочая книга". Панели управления, меню,
кнопки, диалоги и другие объекты, предназначенные для управления при-
ложением, собраны в соответствующие коллекции элементов управления.
Основным элементом объекта "рабочая книга" является коллекция рабочих
листов. Элементом коллекции является отдельный рабочий лист, который
может представлять собой обычный лист (в виде таблицы) или быть в виде
диаграммы. В последнем случае он ничего, кроме диаграммы, содержать не
может. Рассмотрим вариант листа в виде таблицы (рис. 1.5).
Рис. 1.5. Объектная модель листа рабочей книги
Основной объект рабочего листа, с которым приходится работать, — ячейка.
Ячейка как объект сама обладает множеством свойств и объектов, входящих
в нее. Из них наиболее важными и часто используемыми являются: текст,
шрифт, стиль текста, границы, заливка. Чтобы получить доступ к ним, не-
обходимо получить доступ к самой ячейке, а затем изменять ее свойства.
Ячейки объединены в области ячеек Range. Свойства области ячеек во мно-
гом совпадают со свойствами самой ячейки, но есть и отличия, состоящие в
задании координат и размеров области. Ячейки объединены в строки и
столбцы. Объединения строк и столбцов представляют собой коллекции,
доступ к которым производится по числовому индексу или по буквенному
обозначению столбца. На рабочем листе могут располагаться внешние объ-
екты: рисунки, фрагменты документов Word, звуки, видеозаписи и другие
объекты, которые объединены в коллекцию внешних OLE-объектов. Про-
рисовка или, точнее, воспроизведение этих объектов полностью выполняет-
ся внешними программами, зарегистрированными в системе как OLE-сер-
веры. Доступ к таким объектам производится через элементы коллекции
OLEObjects, а доступ к их свойствам возможен только через эти OLE-
серверы. Приложение Excel обладает большим набором собственных графи-
ческих объектов, которые можно разместить на рабочем листе. Мы можем
использовать рисунки, надписи, геометрические фигуры, диаграммы, кото-
рые обычно объединены в коллекции. Например, коллекция ChartObjects
содержит набор диаграмм, которые располагаются на рабочем или на от-
дельном листе. Каждая диаграмма, в свою очередь, также содержит набор
объектов и коллекций. Рассмотрение свойств, состава и содержания диа-
грамм — отдельная тема этой книги (см. главу 14).
Рис. 1.6. Объектные модели диалогов Найти в Excel (а) и Найти и заменить в Word (б)
Чтобы убедиться в гибкости, универсальности и больших возможностях для
программирования объектов MS Office, рассмотрим еще одну коллекцию
объектов, присутствующую как в Word, так и в Excel. Это коллекция диало-
гов (диалоговых окон), которые пользователь обычно открывает нажатием
той или иной кнопки или выбором команды меню. Она принадлежит объ-
екту Application. В объектной модели все диалоги представлены в виде эле-
ментов коллекции Dialogs, доступ к которым обеспечивается через числовой
индекс. Посредством параметров метода Show элемента коллекции проис-
ходят передача параметров в диалог и его выполнение — такова модель диа-
логов для приложений Excel (рис. 1.6, а), для приложений Word модель
диалога несколько отличается. Отличие заключается в том, что в диалог
Word параметры передаются через свойства объекта-элемента коллекции
(рис. 1.6, б).
У объекта Item() наряду с типичными свойствами и методами есть прису-
щие только ему свойства и методы. Например, у диалога Найти и заменить
есть свойство Find, определяющее текст для поиска — до запуска диалога.
В Excel объект коллекции Dialogs несколько отличается от диалогов Word.
Здесь рассмотрим только объектную модель коллекции диалогов для Excel
в целом (рис. 1.7).
Рис. 1.7. Объектная модель коллекции диалогов Excel
На этом рисунке представлена только малая часть всевозможных диалогов
коллекции — показаны диалоги, наиболее часто используемые программи-
стами и пользователями. Обычно в диалог передаются значения, которые
устанавливают значения элементов управления, а возвращаются значения
True или False, в зависимости от результата действия пользователя.
Можно подвести итог: приложения из состава MS Office, например Word и
Excel, представляют собой взаимосвязанные объекты и коллекции объектов.
Каждый объект или коллекция включает в себя множество параметров и
других объектов, коллекций. В свою очередь, сами объекты и коллекции
имеют хозяина (Parent), в состав которого они входят. На вершине объект-
ной модели находятся объекты Word.Application для текстового процессора
Word и Excel.Application — для табличного прцессора Excel. Через эти объ-
екты, в основном, и осуществляется связь этих приложений с внешними
программами. Как все это работает, вы узнаете из следующих глав книги. Если у вашей девушки праздник, можно http://www.ma3.ru/.
Опубликовал Kest
September 13 2009 19:41:26 ·
0 Комментариев ·
16779 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.