Microsoft Office (Разработка документов в Word, Excel и приложений на Visual Basic for Application). - Учебное пособие (Н.А.Устинов)

Программирование на vba в среде microsoft word

В данном пособии рассмотрены элементы программирования на VBA с использованием объектной модели Word. Полную схему можно найти в контекстной справке, в разделе "Справка по Visual Basic"

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

Объектную модель в этом пособии подробно рассматривать не будем. Рассмотрим основные объекты Word.

Application. Находится на первом уровне иерархии. Объект возвращает функцию CreateObject.

Document. Представляет файл документа Word. Содержится в семействе Documents объекта Application. Новый документ создается с помощью метода Add семейства Documents. Существующий документ можно открыть с помощью метода Open семейства Documents. Сохранить документ с помощью метода Save. Закрыть документ с помощью метода Close.

Selection. Определяет текущую выделенную область активного документа. Объект Selection имеет методы для вставки текста, перемещения курсора внутри документа и для выполнения операций вырезки, копирования и вставки.

Метод InsertBefore позволяет вставить текст перед выделенным участком и если свойство ReplaceSelection = True, то текст замещается.

Метод InsertAfter позволяет вставить текст после выделенного участка и если свойство ReplaceSelection = True, то текст замещается.

Объект Range. Представляет собой непрерывную область в документе, независимую от текущего выделения. Каждый диапазон определяется начальной и конечной позициями. Предоставлена возможность, управлять свойствами объекта Range. Например, можно форматировать выделенный текст. Для выделения диапазона применяется метод Select. Свойство Text объекта Range возвращает строку, представляющий текст, содержащийся в диапазоне.

Метод Range объекта Document  позволяет задавать начальную и конечную позицию диапазона в качестве аргументов.

Метод Characters объекта Document  возвращает семейство символов в документе. Позволяет оперировать с отдельными символами, как с объектами Range путем задания индекса в семействе.

Метод Characters объекта Selection возвращает семейство символов в выделенном тексте. Позволяет оперировать с отдельными символами, как с объектами Range путем задания индекса в семействе.

Объект Paragraph. Представляет собой отдельный абзац документа Word. Содержится в семействе Paragraphs объекта Document. Абзацы нумеруются последовательно, (первый абзац имеет индекс 1). Объект Range объекта Paragraph можно использовать для доступа к абзацу как к диапазону. С помощью свойств Alignment, SpaceBefore, SpaceAfter, LeftIndent объекта ParagraphFormat выполняется форматирование на уровне абзаца.

Sentences. Семейство объектов Range представляет отдельное предложение в выделенном тексте, диапазоне, или документе. Предложения нумеруются последовательно, начиная с индекса 1.

Объект Font имеет свойства, которые управляют форматированием (Имя шрифта, размер, начертание).  Доступ через свойства Style и объектов Range.

Style Применяется ко всему абзацу и представляет собой группу свойств форматирования.

Shape. Представляет собой любой графический объект. Каждый тип объекта Shape имеет уникальный набор свойств и методов.