Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

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




Общая структура объектов Word

На практике для решения большинства программных задач достаточно знать всего лишь пять объектов (с сопутствующими коллекциями):

¾ объект Application;

¾ объект Document (с коллекцией Documents);

¾ объект Selection;

¾ объект Range;

¾ объект Bookmark (с коллекцией Bookmarks).

Объект Application — это само приложение Microsoft Word. Все остальные объекты Word "вложены" в этот объект. Создать этот объект — значит запустить Word на компьютере. Как правило если создается объект Word из другого приложения Office, то необходимо добавить в проект ссылку на библиотеку Microsoft Word 12.0 Object Library.

Код на запуск Word:

Dim oWord As New Word.Application

Однако, выполнив этот код из другого приложения окно ворда на экране не появляется, т.к. по умолчанию Word запускается в скрытом окне;

Чтобы сделать Word видимым нужно установить его свойство:

oWord.Visible = True

Для объекта Word предусмотрено большое количество событий (открытие документа, выход из Word, щелчок правой кнопкой мыши, изменение документа, печать документа, сохранение документа и т.п.) Однако по умолчанию все эти события не видны. Чтобы они появились, необходимо в разделе Declarations кода формы (только формы — не модуля!) объявить объект Application с ключевым словом WithEvents, например, так:

Public WithEvents App As Word.Application

В списке объектов появится новый объект App (то есть Application), для которого можно выбрать события и добавлять код в событийные процедуры точно так же, как это делается для формы и элементов управления.

КОЛЛЕКЦИЯ Documents. основные методы

Коллекция Documents представляет все документы Word, открытые в настоящий момент. Начинается нумерация документов в коллекции с 1.

Основное свойство коллекции «Count» — количество открытых документов.

Методы коллекции:

¾ Add() —позволяет создать и сразу же открыть новый документ (и вернуть ссылку на его объект). Полный синтаксис этого метода выглядит как:

Add(Template, NewTemplate, DocumentType, Visible)

Template — это шаблон для создания нового документа, NewTemplate (true/false) — делать ли новый документ шаблоном, DocumentType — варианты: wdNewBlankDocument, wdNewEmailMessage, wdNewFrameset или wdNewWebPage (по умолчанию — новый чистый документ), Visible — будет ли новый документ видимым (по умолчанию) или невидимым.

¾ Open() — позволяет открыть документ с диска и добавить его в коллекцию. Этот метод принимает множество параметров, из которых обязательным является только один — имя документа (вместе с путем к нему). Самый простой вариант применения этого метода выглядит так:

Dim oDoc1 As Document

Set oDoc1 = Documents.Open("c:\doc1.doc")

¾ метод Item() позволяет найти нужный документ в коллекции по его индексу. Но обычно для получения ссылки на нужный документ используется конструкция For..Next с проверкой значения какого-либо свойства документа через If. Чаще всего это свойство — Name:

Dim oDoc1 As Document

For i = 1 To Documents.Count

Set oDoc1 = Documents.Item(i)

If oDoc1.Name = "doc1.doc" Then

Exit For

End If

Set oDoc1 = Nothing

Next

¾ методы Save() и Close() — позволяют сохранить и закрыть все документы в коллекции соответственно.

Объект Document: создание, сохранение и закрытие документов

¾ как элемент коллекции Documents. Формате обращения может выглядеть, например, так: Documents.Item(1);

Чтобы создать новый экземпляр Word, введите такой код кнопки;

Private Sub Комманда1_Click() - создаём новый экземпляр Word-a
Set WordApp = New Word.Application - экземпляр приложения
Set DocWord = WordApp.Documents.Add - экземпляр документа
End Sub

Для сохранения документа под новым именем и в определенное место используйте данный код код: DocWord.SaveAs "c:\DDD.doc"

После такого сохранения вы можете по ходу работы с документом сохранять его.

DocWord.Save - сохраняем документ

Или проверить, были ли сохранены внесенные изменения свойством Saved и если изменения не были сохранены - сохранить их;
If DocWord.Saved=False Then DocWord.Save

Завершив работу с документом, вы можете закрыть сам документ методом Close и сам Word методом Quit.
DocWord.Close True - закрываем документ (без запроса на сохранение)
WordApp.Quit True - закрываем Word (без запроса на сохранение)

Если в методах Close и Quit не использовать необязательный параметр True то Word запросит согласие пользователя (если документ не был перед этим сохранён) на закрытие документа.

 

Структура документа Word.

Для перехода в режим структуры документа служит кнопка "Структура" панели "Режим просмотра документа" ленты "Вид".

В режиме просмотра структуры документа отображается иерархия элементов оформления текста. Но, прежде чем использовать данный режим, необходимо отформатировать документ с применением стандартных заголовков.

Основное удобство при просмотре документа в этом режиме заключается в том, что есть возможность настраивать отображение любого уровня структуры, скрывая при этом те уровни, которые занимают более низкую иерархию. Для этого надо всего лишь выбрать нужный уровень из выпадающего списка "Показать уровень".

У каждого элемента, имеющего подуровни, присутствует значок "+". Двойной щелчок на значке позволяет отобразить/скрыть подуровни.

Уровни можно перемещать вверх/вниз относительно друг друга, а также изменять само значение уровня на более низкое/высокое. Для этих целей служат зелененькие и синенькие стрелочки, расположенные слева на панели "Работа со структурой".

При работе в режиме структуры форматирование текста по умолчанию не отображается.

Для работы с большими документами предназначена панель "Главный документ". Суть работы сводится к тому, что сам документ разбивается на отдельные части, которые хранятся в отдельных файлах. Все "в кучу" собирается в главном документе, который должен быть предварительно структурирован.

 

Объекты Selection

Объект Selection представляет выделенную область.

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

Объект Document имеет метод Range, возвращающий объект Range, и метод Select, создающий объект Selection.

Метод Select – это процедура без параметров, которая создает объект Selection (т.е. выделенную область) в качестве второстепенного эффекта.

 

Объект Range

Объект Range задает область определения некоторого объекта, включая текст и все объекты, связанные с ним – комментарии, ссылки и прочее.

Так, если некоторый объект вызвал метод Range, то возвращаемый объект Range будет содержать область определения объекта, вызвавшего метод.

Метод Range – это функция, возвращающая в качестве результата объект Range (т.е. область определения некоторого объекта).

 

Другие объекты Word.

Рассмотрим некоторые другие объекты Word.

Объекты Word.AddIn, работа с шаблонами Word из VBA

Коллекция AddIns состоит из объектов AddIn, которые представляют глобальные шаблоны Word и встраиваемые приложения Word. Важная возможность этой коллекции заключается в том, что при помощи метода Add() можно в автоматическом режиме устанавливать шаблоны и надстройки. Если вы активно используете эти средства в своих приложениях, то есть смысл подумать над реализацией проверки наличия нужного шаблона или надстройки.

Шаблоны — это файлы с расширением.dot, которые служат образцами для создания документов Word. Чаще всего они используются для того, чтобы защитить от пользователя сохраненные начальные "заготовки" отчетов или как хранилища стилей, макросов, параметров и т.п. для сложных документов, для которых требуется стандартизация.

Объект AutoCorrect, работа с параметрами автозамены в Word из VBA

При помощи этого объекта настраиваются те параметры, которые можно на графическом экране найти в меню Сервис->Параметры автозамены. Влияют эти настройки на автоматическое исправление текста, вводимого пользователем (вручную). Можно использовать для единообразного написания названия фирмы и прочих элементов, которые у пользователей часто получаются разными, но чаще всего этот объект используется для отключения автозамены, поскольку это может мешать пользователям.

Объект Language, работа с установленными языками в Word из VBA

Эти коллекции представляют языки, которые знает данная версия Word и умеет с ними работать (самое ценное — словари для проверки орфографии и грамматики нужно устанавливать отдельно или пользоваться локализованной версией Word).

Объекты Word.Font и Word.ParagraphFormat, программное изменение оформления документа Word средствами VBA

Эти объекты ответственны за форматирование, соответственно, участков текста и абзацев. Свойства объекта Font позволяют определить все параметры, которые доступны через меню Формат -> Шрифт, а свойства объекта ParagraphFormat — то, что доступно через Формат -> Абзац. Объект Font можно получить через свойство Font, которое есть, в частности, у объектов Selection, Range и Find, а объект ParagraphFormat — через свойство Format, которое есть у объектов Paragraph (для одного абзаца) и коллекции Paragraphs (для нескольких абзацев).

Объект Word.PageSetup, программная настройка параметров страницы перед печатью средствами VBA

Если в вашем приложении используется печать, чаще всего без использования этого объекта не обойтись. Он позволяет программным образом настроить то, что на графическом экране настраивается через меню Файл->Параметры страницы. Объект PageSetup является вложенным в объекты Document, Selection и Range, и обычно обращение к нему происходит через эти объекты.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...