Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Задание для самостоятельной работы 10.1 Программное формирование документа в Word




Ситуация:

Вам необходимо автоматизировать формирование договоров в виде документов Word. Типичный договор выглядит так, как представлено на рис. 10.2 (для простоты в этом задании вам нужно формировать только его начало). Изменяемые данные, которые должны подставляться программно, выделены зеленым цветом.

Рис. 10.2 Так должен выглядеть созданный программно договор

Задание:

· Создайте в шаблоне normal.dot пользовательскую форму с именем Dogovor, аналогичную представленной на рис. 10.3.

Рис. 10.3 Форма для занесения данных договора

· Создайте макрос, который по которому эта форма должна открываться, и назначьте этому макросу кнопку на панели инструментов Word.

· Создайте и сохраните на диске с именем C:\dogovortemplate.dot шаблон Word, в который будут подставляться необходимые данные, и добавьте в нужные места закладки.

· Создайте для кнопки Сформировать договор на форме программный код, при помощи которого на основе шаблона и подставляемых данных из формы формировался бы новый документ с текстом договора.

Примечание:

В реальном приложении данные из формы должны были бы сохраняться в базе данных и использоваться потом многократно (например, для формирования других документов). В этом примере для простоты данные для создаваемого документа берутся напрямую из формы. Работа с базой данных в похожей ситуации будет рассмотрена в задании к главе, посвященной Access.

По этой же причине все данные в этом примере (включая дату и номер договора) текстовые.


Решение:

К пункту 1 — создание пользовательской формы:

· Откройте окно редактора Visual Basic для Word и щелкните правой кнопкой мыши по проекту Normal в Project Explorer, а затем выберите в контекстном меню Insert -> UserForm.

· В дизайнере форм сконструируйте форму, аналогичную представленной на рис. 10.1-2 (про работу с дизайнером форм рассказывалось в разделе 5). В нашем примере элементы управления на форме будут называться так:

o текстовое поле для ввода города: txtCity;

o текстовое поле для ввода номера договора: txtNumber;

o текстовое поле для ввода даты: txtDate;

o текстовое поле для ввода наименования организации: txtOrg;

o текстовое поле для ввода представителя организации: txtPerson;

o текстовое поле для ввода его должности: txtTitle;

o текстовое поле для ввода юридического основания: txtLaw;

o кнопка для формирования договора: cmdDog;

o кнопка Отмена: cmdСancel.

· Настройте оформление для элементов управления по вашему вкусу. Установите значение для свойства Caption для формы как "Данные договора". Для кнопки cmdDog установите True для значения свойства Default, а для кнопки cmdCancel установите True для значения свойства Cancel. Для свойства (Name) самой формы введите значение FormDog.

К пункту 2 — создание макроса и кнопки для показа формы:

· В стандартном модуле NewMacros проекта Normal создайте новую процедуру с именем FormDog(). Код ее может быть таким:

Public Sub FormDogShow ()

FormDog.Show

End Sub

· Убедитесь, что при его запуске открывается созданная вами форма.

· В Word в меню Сервис выберите Настройка, а затем перейдите на вкладку Команды. В списке Категории выберите Макросы, а затем перетащите на любую панель инструментов макрос Normal. NewMacros.FormDogShow. Настройте для созданной кнопки подходящий формат отображения (см. главу 1 этой книги). После этого закройте окно Настройка и убедитесь, что при нажатии на эту кнопку открывается форма.

 

К пункту 3 — создание шаблона документа Word:

· Создайте новый документ Word, аналогичный представленному на рис. 10.4.

Рис. 10.4 Шаблон договора

· Поместите в нужные места этого документа закладки. Места вставки закладок можно посмотреть на рис. 10.2 (текст, выделенный зеленым). В нашем примере закладки будут называться так:

o закладка для ввода номера договора: bNumber;

o закладка для ввода города: bCity;

o закладка для ввода даты: bDate;

o закладка для ввода наименования организации: bOrg;

o закладка для ввода представителя организации: bPerson;

o закладка для ввода его должности: bTitle;

o закладка для ввода юридического основания: bLaw.

· Сохраните этот файл как шаблон Microsoft Word с именем C:\DogovorTemplate.dot.

 

К пункту 4 — создание программного кода для кнопок на форме:

· Для события Click кнопки cmdCancel введите следующий программный код:

Private Sub cmdCancel_Click()

FormDog.Hide

End Sub

· Для события Click кнопки cmdDog можно использовать следующий программный код:

Private Sub cmdDog_Click()

Dim oDoc As Document

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

oDoc.Bookmarks("bNumber").Range.Text = txtNumber.Value

oDoc.Bookmarks("bCity").Range.Text = txtCity.Value

oDoc.Bookmarks("bDate").Range.Text = txtDate.Value

oDoc.Bookmarks("bOrg").Range.Text = txtOrg.Value

oDoc.Bookmarks("bTitle").Range.Text = txtTitle.Value

oDoc.Bookmarks("bPerson").Range.Text = txtPerson.Value

oDoc.Bookmarks("bLaw").Range.Text = txtLaw.Value

FormDog.Hide

oDoc.Activate

End Sub

 






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных