- •Основы офисного программирования и язык 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
- •Наследование интерфейсов
- •Полиморфизм семейства классов
- •Проект "Люди и Машины"
Vba и объекты. Обзор
В этой книге основное внимание мы хотим уделить самому языку VBA - его ядру, средствам, определяющим этот язык, как обычный язык программирования. Но заранее можно предсказать, что "столкновения" или лучше сказать встречи с объектами нам не избежать. Все-таки, сутью VBA является его возможность непосредственной работы с объектами. Поэтому эту лекцию мы решили посвятить первому знакомству с объектами. Подробное их рассмотрение будет предметом следующей книги.
Office - это среда, в которой многие задачи можно решать без всякого программирования. Office 2000 - это среда, в которой класс таких задач существенно расширился. Но для программиста ценность офисной среды состоит в том, что все задачи, решение которых может быть получено "руками", можно получить и программно. И все, что нельзя сделать руками, можно сделать программно. Для программирования используется язык VBA (Visual Basic for Applications), представляющий расширение ядра языка VB (Visual Basic) объектами, определяющими приложения Office 2000.
Процесс работы в Office 2000 может быть, конечно, разным, - все зависит от того, работает ли профессионал - одиночка, или коллектив исполнителей разрабатывает большой проект. Но давайте будем представлять его следующим образом:
-
В работе участвуют специалисты в проблемной области и программисты. Целью работы является создание системы "живых" документов офиса или предприятия. Работа строится на мощной основе, которую составляют документы, предоставляемые средой Office 2000. Документами могут быть бланки, отчеты, справки, базы данных, запросы к ним, графики, диаграммы. Документы мы называем живыми, поскольку в процессе работы конечных пользователей (специалистов) они могут изменяться. Эти изменения являются результатом выполнения различных функций над данными, размещенными в документах.
-
Библиотека объектов Office 2000 представляет собой каркас документов (чуть позже мы определим более точно этот термин). Открывая впервые одно из приложений Office 2000, например Word, специалист получает готовый каркас некоторого документа, - для Word это документ, в котором основным типом данных будут тексты. Затем специалист берется за дело и наполняет этот каркас плотью и кровью, создавая уже реальный документ, входящий в общую систему. Однако, как бы ни увеличивались стандартные возможности среды, всегда для оживления документа чего-нибудь да не хватает, (вспомните, мечту о дефиците одного из героев Райкина). И тогда приходит время программиста.
-
В процессе создания "живых" документов программист будет работать на VBA, едином языке программирования, объединяющем мир объектов среды Office 2000. VBA представляет мощный, универсальный язык программирования и на нем можно делать все, или почти все, что и на любом другом языке программирования. Но главное его достоинство состоит в том, что в нем определены и доступны для программиста все объекты Office 2000. Это значит, что доступны все документы, все их части, и части этих частей, вплоть до символа, рисунка, ячейки. Это и позволяет программисту легко проводить настройку системы документов с учетом их специфики. (В английском языке для этой деятельности есть хороший термин - customization, но, может быть, и термин "настройка" не хуже).
Ранее уже говорилось, о том, что такой стиль работы становится популярным. Язык VBA является теперь отчуждаемым от среды Office 2000, он может быть встроен в любую другую среду. Реально этот процесс уже идет, мы приводили пример с программными продуктами фирмы Corel, но есть и большое число других подобных примеров.