Приклад висновку даних з Access в Word, MS Office, Програмні керівництва, статті

Іноді виникають ситуації, коли потрібно автоматично внести дані в один з типових документів: службову записку, лист, договір і т. д. Причому не завжди такі документи можна сформувати, використовуючи звіти Access. Наприклад:



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


Взагалі, кожен документ Microsoft Word заснований на шаблоні. Шаблон визначає основну структуру документа і містить настроювання документа, такі як елементи автотексту, шрифти, призначені поєднання клавіш, макроси, меню, параметри сторінки, форматування і стилі. У нашому ж випадку, необхідно просто створити макет звіту подібно до того як це робиться в Access. Для цього створюємо звичайний документ Word, потім в меню Файл – Зберегти як вибираємо тип файлу – Шаблон документа. В результаті отримаємо документ Word з розширенням. Dot – шаблон.


Для редагування шаблону краще його відкривати не подвійним клацанням, як звичайний документ, а наприклад, через контекстне меню: правою кнопкою – і вибрати пункт відкрити. В іншому випадку при спробі збереження доведеться повторно ставити формат документа – шаблон (. dot), інакше він буде збережений як звичайний документ Word (. doc).


Як приклад створимо шаблон реквізитів замовника. Оформити його можна наприклад так: створити заголовок, потім таблицю, куди будуть вставлені реквізити. Вставляти дані краще в таблицю, так як в цьому Якщо текст не влізе в ширину стовпця, то стовпець автоматично збільшиться по висоті. А от якщо вставляти текст просто в задане місце, то при аналогічній ситуації не вміщається дані з’являться з нового рядка, що змінить макет шаблону.


А тепер власне про технологію вставки тексту в потрібне місце. Щоб вставити текст, спочатку потрібно визначити місце, куди він повинен вставлятися. У даному прикладі це робиться за допомогою «Закладок» (дивимося в меню документа Word: Вставка – Закладка).


Закладка – це елемент документа, якому присвоєно унікальне ім’я. Це ім’я можна використовувати для подальших посилань. Наприклад, можна використовувати закладку для визначення тексту, який необхідно перевірити пізніше. Щоб наступного разу не шукати цей текст у всьому документі, можна перейти до нього за допомогою діалогового вікна Закладка.


У нашому випадку закладками є елементи шаблону, виділені курсивом (дивимося в папку Dot). Створюються вони дуже просто:



В результаті отримали закладку з ім’ям «Замовник». В принципі, можна було просто встановити курсор в потрібне місце і вищесказаним чином створити закладку. Але тоді для перегляду, де яка закладка встановлена в документі потрібно буде через меню Вставка – Закладка вибрати ім’я закладки і натиснути кнопку Перейти. Це незручно, простіше і наочніше створити однойменний текст в документі.


Тепер залишилося створити функцію, яка б відкривала створений шаблон Word, вставляла б туди замість закладок потрібний текст і зберігала створений документ під заданим ім’ям. У минулій статті вже розповідалося про способи відкриття документів Office. Залишилося тільки з’ясувати, як звернутися до закладки. Робиться це за допомогою властивості документа Bookmarks.Item Наприклад:



Bookmarks.Item (“Замовник”). Range.Text = Nz (Замовник, “”)


Тут йде звернення до закладки під ім’ям Замовник і за допомогою її властивості Text їй присвоюється потрібне значення – в даному випадку вміст однойменного поля на формі. На випадок, якщо в полі немає даних, застосована функція Nz (Значення, Значення якщо Null).


Документ створюється під ім’ям ініціалів замовника, тому дане поле не повинно бути порожнім. Це реалізовано за допомогою властивості поля (див. конструктор таблиць) «Обов’язкове поле – Так». Крім того, у наведеному прикладі так само реалізована процедура пошуку раніше створеного документа за допомогою стандартної функції Dir. Якщо документ не знайдений, то створюється новий документ Word на основі шаблону



Set app = New Word.Application
app.Visible = True
app.Documents.Add strPathDot


якщо ж такий документ існує, то виводиться відповідне повідомлення: «Документ з таким ім’ям раніше вже був створений. Замінити його? »При виборі« Так »створюється новий документ замість старого, при виборі «Ні» відкривається старий документ



Set app = CreateObject(“Word.Application”)
With app
      .Visible = True
      .Documents.Open strPathWord
End With

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*