* Структура проекта в MS WORD. Работа с документами. (слайд 2 -5) Работа с абзацами. (слайд 6 -7) Работа с текстом. (слайд 8 -11)
* После создания пустого документа в Word проект содержит два объекта: Document (документ) и ссылку на шаблон Normal. В дальнейшем в проект можно добавлять стандартные модули , модули классов и формы. Набор базовых действий, выполняемых над документами: Действие Объект Метод Создание документа Открытие документа Закрытие документа Сохранение документа Проверка грамматики Проверка орфографии Отмена действия Documents Document Add Open Close Save, Save. As Check. Grammar Check. Spelling Undo Повтор действия Document Redo
Для настройки атрибутов документов предусмотрено несколько объектов, вложенных в объект Document. Коллекция Documents содержит все открытые документы. Доступ к элементам коллекции можно получить по имени документа либо по его индексу. Например: Document. (“Документ1”). Activate Объект Page. Setup Описание Позволяет задавать страницы документа Fields (Field) Позволяет задавать размеры полей Lists (List) Позволяет списков задавать параметры
Создание Процедуры обработки события объекта Document предполагает выполнение ряда последовательных действий: * Щёлкнуть дважды на элементе This. Document. В окне программы отобразятся процедуры обработки события данного документа * Используя выпадающий список Object, выбрать пункт Document * Перейти к раскрывающемуся списку Procedure и пометить в нем событие, процедуру обработки которого следует создать В результате в окне программы будет создана пустая процедура обработки события. Объект Document имеет 3 события: * Close – происходит при закрытии документа или шаблона * New – происходит при создании нового документа, основанного на шаблоне. Процедура обработки данного события будет выполнена только в том случае, если она присутствует в шаблоне. * Open – происходит в момент открытия документа ил щаблона.
* Пример: Sub Работа_с_документом() Dim New. Djc As Document 'присваиваем переменной ссылку на созданный документ Set New. Doc = Documents. Add 'Задаём режим автоматической проверки орфографии New. Doc. Show. Spelling. Errors = True 'Задаём режим автоматической проверки грамматики New. Doc. Show. Grammatical. Errors = True 'Сохраняем созданный документ New. Doc. Save. As File. Name: ="D: Новый документ. doc" 'Закрываем документ New. Doc. Close 'Открываем ранее созданный документ Documents. Open File. Name: ="D: Новый документ. doc" End Sub
* Для автоматизации работы с абзацами используют коллекцию Paragraphs, которая содержит все абзацы конкретного документа. Доступ к нужному абзацу осуществляется с помощью объекта Paragraph, который является конкретным абзацем документа. Существует ещё несколько объектов, которые позволяют управлять форматированием абзацев: Действие Добавление абзаца Установка выравнивания Установка отступа первой строки Объект Paragraphs Paragraph. Format Add Align First. Line. Indent Установка отступа слева Paragraph. Format Left. Indent Установка отступа справа Paragraph. Format Right. Indent Установка межстрочного интервала Установка интервала перед абзацем Установка отступа после абзаца Paragraph. Format Line. Spacing Paragraph. Format Space. Before Paragraph. Format Space. After * Метод
* Пример работы с абзацами: Sub Work. Wiht. Paragraph() Dim Work. Doc As Document Dim New. Paragraph As Paragraph 'присваиваем переменной ссылку на файл документа Set Work. Doc = Documents. Open(File. Name: ="D: Новый документ. doc") 'добавляем новый пустой абзац в открытый документ Set New. Paragraph = Work. Doc. Paragraphs. Add 'задаём выравнивание абзаца по ширине New. Paragraph. Alignment = wd. Align. Paragraph. Justify 'устанавливаем отступ первой строки New. Paragraph. First. Line. Indent = 43 'задаём режим автоматической расстановки переносов для абзаца New. Paragraph. Hyphenation = True 'устанавливаем стиль абзаца New. Paragraph. Style = "Заголовок 1" End Sub
* MS Word обладает большим количеством объектов, предназначенных для работы с текстом. Основными из них являются объекты Range и Selection. Объект Range представляет собой доступ к одному или нескольким символам текста документа. кроме того он встроен в качестве свойства во многие другие объекты. Объект Selection позволяет работать с выделенным текстом. Данный объект имеет метод, характерный только для него – Type. Text (позволяет вставить в выделение текст) Для получения доступа к этим объектам можно воспользоваться методами Range или Selection объекта Document. * Пример: Set Range 1=Active. Document. Range(Start: =0, End: =15) – задает диапазон активного документа, в который включено первых 15 символов документа Set Range 2=Active. Document. Paragraphs(3). Range – задаёт диапазон, содержащий третий абзац документа
Действия, выполняемые над текстом: Действие Вставка текста из буфера обмена Копирование текста в буфер обмена Метод Paste Copy Выделение текста Удаление текста Добавление символа Select Delete Insert. Symbol Объект Range является также элементом некоторых других коллекций, предназначенных для работы с текстом: – коллекции Characters, содержащей все символы данного документа, выделения или диапазона. Объект Range в данном случае является одним символом – коллекции Sentences, содержащей объекты Range в качестве элементов, каждый из которых является отдельным предложением документа, выделения или диапазона – коллекции Words, содержащей объекты Range, являющиеся отдельными словами документа, выделения или диапазона.
Свойства объекта Range: Свойство Font Bold Italic Start, End Описание Стиль написания символов Тип шрифта - стиль написания текста олужирным(значение True) Тип шрифта - стиль написания текста курсивом (значение True) Позиция первого и последнего символов диапазона Методы объекта Range: Метод Collapse Copy Insert. After Insert. Paragrap h Insert. Symbol Paste Select Описание Сдвигает диапазон или выделение к начальной или конечной позиции входящих символов Копирует содержимое диапазона в буфер обмена Вставляет текст в конец диапазона или выделения Заменяет диапазон символов или выделение на новый абзац Вставляет символ в заданном месте диапазона или выделения Вставляет содержимое буфера обмена в заданный диапазон или выделение Выделяет фрагмент текста
* Пример1: Код макроса, который задаёт атрибуты для выделенного текста Sub Format. Text() With Selection. Font. Bold = True : . Font. Italic = True. Font. Name = "Tahoma « : . Font. Size = 18 End With End Sub * Пример2: Sub Work. With. Text() Dim Work. Doc As Document : Dim Curr. Range As Range Dim New. Paragraph As Paragraph : Dim Curr. Word As Range Set Work. Doc = Documents. Open(File. Name: ="D: новый документ. doc") Work. Doc. Content. Insert. After Text: ="текста в документ" Selection. Insert. Before Text: ="пример вставки " With Selection. Font. Bold = True : . Font. Italic = True. Font. Name = "Arial « : . Font. Size = 12 End With End Sub