Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DIC_VBA.doc
Скачиваний:
2
Добавлен:
11.08.2019
Размер:
685.06 Кб
Скачать

Програмування в Word

З точки зору програмування Word - це, перш за все, засіб для виготовлення звітів до баз даних. Якщо ж звіт спочатку створюється в документі Word, то користувач завжди може сам внести в створений документ необхідні зміни - переважна більшість користувачів на підприємстві вміють працювати в Word. Терміново розшукувати розробника вже не потрібно.

На практиці для вирішення більшості програмних завдань достатньо знати всього лише п'ять об'єктів (з супутніми колекціями):

􀂈 об'єкт Application;

􀂈 об'єкт Document (з колекцією Documents);

􀂈 об'єкт Selection;

􀂈 об'єкт Range;

􀂈 об'єкт Bookmark (з колекцією Bookmarks).

Як працювати з об'єктом Application

Об'єкт Application - це сам додаток Microsoft Word. Всі інші об'єкти Word "вкладені" в нього. Створити цей об'єкт - значить, запустити Word на вашому комп'ютері. Як правило, це нам і необхідно (якщо ми створюємо документ у форматі Word з іншої програми. Але не забудьте - якщо ви запускаєте Word з іншої програми Office, то необхідно додати у ваш проект посилання на бібліотеку Microsoft Word 11.0 Object Library.

Код запуску Word дуже простий:

Dim oWord As New Word.Application

Однак, виконавши його з іншої програми, ви, швидше за все, навіть не помітите, що у вас щось сталося. Причини прості:

1. За замовчуванням Word запускається в прихованому вікні.

2. Якщо в ньому не відкрито жоден документ, він тут же закривається (після то-го, як завершується створила його процедура).

Зробити Word видимим дуже просто:

oWord.Visible = True

Проте може виникнути питання: а чи потрібно його робити видимим? Можна віддати перевагу тому, щоб Word таки був видимим: по-перше, відразу видно всі проблеми при створенні документа, а по-друге, користувачам чомусь дуже подобається, коли у них на очах відкривається Word і починає друкувати рядки, які в іншому разі довелося б друкувати їм самим.

Якщо ви працюєте з Word в прихованому вікні, не забудьте після виконання необхідних дій його закрити (інакше він так і залишиться в оперативній пам'яті, видимий тільки через Task Manager). Для закриття Word потрібно викликати його метод Quit ().

Щоб Word не закривався сам собою, в ньому досить створити новий документ.

В об'єкта Application є безліч подій: відкриття, закриття, збереження та друк документа, клацання мишею, активізація, вихід з додатку і т. д. Єдине, що слід ще раз наголосити - події об'єкта Application за замовчуванням не відображаються в редакторі Visual Basic. Щоб вони з'явилися, в розділ Declarations потрібно помістити наступний рядок коду:

Public WithEvents App As Word.Application

В цьому випадку в списку об'єктів у вікні редактора коду для форм з'явиться об'єкт App з усіма необхідними подіями.

Як працювати з колекцією Documents

На один щабель нижче об'єкта Application в об'єктної моделі Word (і за логікою використання в додатках) знаходяться колекція Documents і об'єк-екти Document, з яких вона складається. При програмуванні в Word без них зазвичай не обійтися. Найчастіше в програмах нам потрібно:

1. Запустити Word.

2. Створити або відкрити документ.

3. Щось з цим документом зробити (наприклад, надрукувати в потрібні місця цього документа значення, отримані з бази даних або від користувача).

Найпростіший варіант створення документа виглядає так:

Dim oDoc As Word.Document

Set oDoc = Application.Documents.Add ()

При цьому ми створили звичайний порожній документ (на основі шаблону Normal.dot) і отримали посилання на нього в об'єктну змінну oDoc. Далі в документ можна програмно вводити потрібну нам інформацію. Однак створювати порожній документ і формувати весь його вміст зручно лише тоді, коли документ дуже простий. Набагато простіше набрати і оформити складний документ звичайним способом, як простий документ Word, і залишити в ньому порожні місця для заповнення з програми. Найпростіше це зробити за допомогою шаблона Word.

Спочатку потрібно набрати текст договору, залишивши порожні місця для змінюваних даних, і зберегти його з розширенням dot (припустимо, що він збережений на диску C: з ім'ям dog_blank.dot). Тоді створити документ на основі цього шаблону можна так:

Dim oDoc As Word.Document

Set oDoc = Application.Documents.Add ("C: \ dog_blank.dot")

А далі за допомогою об'єктів Bookmark і Range вводимо текст в залишені порожні місця.

Часто виникає потреба програмним способом налаштовувати новий документ, а відкрити вже наявний і щось зробити з ним. Відкрити документ найпростіше за допомогою методу Open () колекції Documents. Найпростіший варіант застосування цього методу виглядає так:

Dim oDoc1 As Word.Document

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

Зберігати документи краще за допомогою методів Save () іSaveAs () об'єкта Document. Часто використовуваних подій в об'єкта Document всього три: New (можна визначити тільки для шаблону, спрацьовує, коли на основі цього шаблону створюється новий документ), Open і Close. Всі ці події очевидні і доступні у вікні редактора коду Visual Basic.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]