- •Основы офисного программирования и язык vba
- •Офисное программирование
- •Состав Office 2000
- •Инсталляция Office 2000
- •Содержимое диска "Resource Kit"
- •Документ Issues
- •Документ ork9
- •Папка Tools
- •Содержимое диска "Language Pack"
- •Об этой книге и ...
- •Моя благодарность
- •Vba и объекты. Обзор
- •Библиотека объектов Office 2000 - каркас приложений
- •Встраивание вместо наследования
- •Построение каркаса документа
- •Библиотека объектов Office 2000 и Object Browser
- •Объекты Application
- •Свойства-участники
- •Вторая группа терминальных свойств
- •Методы объектов Application
- •События объектов Application
- •Совместная работа приложений. Создание объектов Application. Раннее и позднее связывание
- •Коллекции в Office 2000
- •Коллекции объектов Office 2000
- •Коллекции Excel: Workbooks, Sheets
- •Коллекция Workbooks
- •Коллекция Sheets
- •Коллекции Word: Documents, Paragraphs и другие
- •Коллекция Documents
- •Коллекция Paragraphs
- •Коллекция Sections
- •Коллекции Characters, Words, Sentences
- •Коллекции и конструкция For Each … Next
- •Объекты Range
- •Что определяет объект Range?
- •Метод Range
- •Объекты Selection
- •Метод Select и свойство Selection
- •Активные объекты и метод Activate
- •Проектирование документов
- •Документ и его программный проект
- •Модули - обработчики событий
- •Стандартные модули
- •Модули классов
- •Модуль макросов
- •Структура модуля. Окно проекта и Окно кода
- •Окно проекта
- •Свойства проекта
- •Имя проекта
- •Защита проекта
- •Окно кода
- •Еще раз о "переиспользовании" модулей
- •Проект и область видимости
- •Система документов и ее проект
- •Организация системы документов
- •Как организуются ссылки между проектами
- •Обмен информацией между документами
- •Система документов One - Two - Three
- •Типы данных
- •Простые типы данных.
- •Объявление переменных и констант простых типов
- •Синтаксис объявления простых переменных
- •Объявления по умолчанию
- •Константы
- •Массивы
- •Динамические массивы
- •Записи и тип, определенный программистом
- •Что можно делать с записями?
- •Раздел объявлений
- •Раздел опций
- •Разделы констант, типов и переменных
- •Раздел Declare
- •Правила именования
- •Типы и классы Еще раз о понятии "класс"
- •Что нового в классах "Office 2000"
- •Создание класса "Личность"
- •Объекты и переменные
- •Объекты, класс которых определен пользователем.
- •Объекты "родного" приложения
- •ActiveX-объекты
- •Модуль класса Свойства
- •Сокрытие свойств
- •Конструкторы и деструкторы. Стандартные события
- •Стандартные события Initialize и Terminate
- •Два конструктора класса Rational
- •Процедуры - свойства
- •Как создаются процедуры- свойства
- •Синтаксис Let, Get и Set
- •Классы, как упаковка
- •Семейство классов и процедуры - свойства
- •Friend методы
- •События
- •Классы, объекты With Events и обработчики событий
- •Модуль класса с объектом WithEvents
- •Объект WithEvents
- •События собственных классов
- •Как создать класс с событиями
- •Как зажигаются события
- •Где и как следует создавать обработчики событий для экземпляров класса
- •Связывание объектов
- •Реальные объекты и инициирование событий
- •Семейство классов и реализация интерфейсов
- •Наследование
- •Виртуальные методы и полиморфизм
- •Абстрактные классы
- •Наследование и полиморфизм в Office 2000
- •Наследование интерфейсов
- •Полиморфизм семейства классов
- •Проект "Люди и Машины"
Коллекции в Office 2000
Почти половина классов объектов в Office 2000 являются коллекциями. Это объясняется тем, что элементы большинства классов можно объединить в упорядоченную совокупность, получив тем самым новый класс - коллекцию элементов. Коллекция это способ организации динамической структуры данных, и потому методы коллекций во многом схожи между собой. Но поскольку специфика элементов различна, то, как следствие, коллекции имеют и специальные свойства и методы. В современных языках программирования коллекции становятся столь же употребительной частью языка, как массивы. Рассмотрим некоторые коллекции объектов Office 2000 и те вариации, которыми они отличаются друг от друга.
Коллекции объектов Office 2000
Мы уже говорили, что коллекцию можно рассматривать, как структуру данных, способ их организации. При таком подходе свойства и методы коллекции определяют эту структуру и не учитывают специфику объектов, составляющих коллекцию. Этот подход характерен для класса Collection языка VBA. В других приложениях Office 2000 преобладает несколько иная точка зрения: здесь для большинства коллекций учитываются особенности их объектов, что находит отражение в появлении специфических свойств и методов у различных коллекций. Сейчас мы подробно рассмотрим некоторые коллекции объектов Office 2000. Выбранные для ознакомления коллекции интересны сами по себе, ввиду их широкого использования. С другой стороны, нам важно дать общее представление о возможных вариациях при организации специальных коллекций. Надеемся, приведенных примеров будет достаточно для ориентации во всех имеющихся классах коллекций.
Коллекции Excel: Workbooks, Sheets
"Excel позволяет одновременно работать с одной или несколькими рабочими книгами. Каждая книга состоит из одного или более листов. Листы бывают разных типов: рабочие листы, диаграммы, модули, листы макросов. Один из наиболее употребительных - рабочий лист - состоит из совокупности ячеек. Мощь Excel во многом определяется операциями, которые можно выполнить над ячейками рабочего листа…"
Примерно так можно было бы начать описание Excel. Мы начали его с введения основных понятий. При объектном подходе каждому понятию ставится в соответствие класс объектов. В терминах классов и объектов это же описание Excel может выглядеть так:
"Объект Application. Excel, представляющий приложение Excel, имеет свойство-участник (встроенный объект) WorkBooks, возвращающее объект WorkBooks - коллекцию всех открытых рабочих книг. Каждый элемент коллекции - рабочая книга - является объектом класса WorkBook.
Объект WorkBook, представляющий одну рабочую книгу, имеет свойство Sheets. При обращении к этому свойству возвращается объект Sheets - коллекция листов данной книги. Каждый элемент коллекции - лист - имеет свой тип и потому является объектом, например, класса Worksheet (рабочий лист) или Chart (диаграмма).
Объект Worksheet, представляющий один рабочий лист, имеет свойство Cells, возвращающее объект Range. Используя этот объект, можно задавать как все ячейки рабочего листа - всю таблицу, так и любую ее часть…"
Как видите, при объектном подходе к изучению Excel мы начинаем с введения классов объектов и заметьте, коллекции появляются уже на первых шагах. Коллекции WorkBooks, Worksheets представляют центральные понятия Excel. С них мы и начнем подробное рассмотрение коллекций объектов Office 2000.