В этой статье мы рассмотрим коллекцию Sections и ее объекты Section, которые предоставляют разделы документа Word. Существует тонкая грань между разделами и страницами документа, так, в созданном документе существует только один раздел, при желании можно добавить еще несколько, однако количество страниц может быть или равным количеству разделов, или больше. Добавление разделов документа Word актуально в том случае, если мы хотим оформить рамку для каждой страницы в индивидуальном стиле.
Возьмем такой пример: в документе 20 страниц и один раздел, которому они принадлежат, приложение Word позволяет применить заданную рамку ко всему разделу, к первой странице раздела или ко всем страницам кроме первой. Но, что если мы хотим, что бы каждая страница была оформлена индивидуальной рамкой (свет, стиль, толщина линии)? В таком случае, нам придется добавить 20 отдельных разделов в документ Word, и уже для каждого применить индивидуальное оформление.
Sections – разделы документа Word
Коллекция Sections содержит объекты Section для заданного документа, выделения или выбора. Отсюда следует, что мы можем получить доступ к данной коллекции тремя способами с помощью свойства Sections, которое есть у таких объектов:
Word Document – В данном случаем мы обрабатываем разделы для конкретного документа Word.
Word Selection – Тут мы можем получить те разделы документа Word, которое принадлежат заданному выделению.
Word Range – Тут мы можем получить те разделы документа Word, которое принадлежат заданному выбору.
Свойства
Count – Возвращает количество разделов (объектов Section) в коллекции.
First — Возвращает объект Section, представляющий первый элемент в коллекции Sections.
Last — Возвращает объект Section, представляющий последний элемент в коллекции Sections.
PageSetup — Возвращает объект PageSetup.
Методы
Add(Range, Start) — Возвращает объект Section, представляющий новый раздел, добавленный в документ Word. Оба параметра являются дополнительными.
Range — Диапазон перед которым нужно вставить раздел. Если этот аргумент опущен, раздел документа Word вставляется в конец.
Start — Тип раздела документа Word, который вы хотите добавить. Если параметр отсутствует, то раздел добавляется после следующей страницы. Значение константы WdSectionStart.
- wdSectionContinuous — 0 – Сплошной раздел.
- wdSectionEvenPage — 3 — Четные страницы.
- wdSectionNewColumn — 1 – Колонка.
- wdSectionNewPage — 2 — Страница.
- wdSectionOddPage — 4 — Нечетные страницы.
Item(index) – Доступ к заданному разделу по его номеру в коллекции.
Section – разделы документа Word
Свойства
Application — Возвращает объект Word Application.
Borders — Возвращает коллекцию Borders.
Footers и Headers — Свойства возвращают коллекцию HeadersFooters для нижнего или верхнего колонтитула.
Range — Возвращает объект Range.
PageSetup— Возвращает объект PageSetup.
Index — Возвращает позицию объекта Section в коллекции.
Теперь рассмотрим два программных кода на языке VBScript и JScript:
' ---------------------------------------------------------------------------- ' Коллекция Sections и объект Section ' Добавление разделов в документ Word ' Sections.vbs ' ---------------------------------------------------------------------------- Option Explicit dim oWord, oDoc, oSel, i, MyText Set oWord = CreateObject("Word.Application") Set oDoc = oWord.Documents oDoc.Add() oWord.Visible = True Set oSel = oWord.Selection MyText = "Разделы документа Word. " For i=0 to 40 oSel.TypeText MyText & MyText & MyText & MyText & MyText & MyText & MyText oSel.TypeParagraph Next MsgBox "Количество разделов в документе Word - " & oDoc(1).Sections.Count oDoc(1).Sections.Add oDoc(1).Sections.Add oDoc(1).Sections.Add MsgBox "Количество разделов в документе Word - " & oDoc(1).Sections.Count |
// ---------------------------------------------------------------------------- // Коллекция Sections и объект Section // Добавление разделов в документ Word // Sections.js // ---------------------------------------------------------------------------- var oWord, oDoc, oSel, i, MyText; oWord = WScript.CreateObject("Word.Application"); oDoc = oWord.Documents; oDoc.Add(); oWord.Visible = true oSel = oWord.Selection; MyText = "Разделы документа Word. "; for(i=0; i<=40; i++){ oSel.TypeText(MyText + MyText + MyText + MyText + MyText + MyText + MyText); oSel.TypeParagraph(); } WScript.Echo("Количество разделов в документе Word - " + oDoc(1).Sections.Count); oDoc(1).Sections.Add(); oDoc(1).Sections.Add(); oDoc(1).Sections.Add(); WScript.Echo("Количество разделов в документе Word - " + oDoc(1).Sections.Count); |
В данных примерах все довольно просто. В самом начале мы создаем ссылку на объект Word Application, далее происходит создание нового документа и вставка в него заданного текста. Приложение Word автоматически создает один раздел для всего документа, плюс, данный раздел будет содержать в себе все страницы.
Далее в сценарии происходит вывод количества разделов документа Word, естественно, их значение равно 1. После, мы добавляем три новых раздела с помощью метода Add и снова выводим общее количество разделов.