|
Офисное программирование - Создание модуля Печать |
Страница 35 из 51
Создание модуля Печать для шаблона документа Далее необходимо перейти в редактор VBA и создать форму приложения, отвечающего условиям задачи (рис. 85). В листинге представлен код процедуры печати бланка квитанции об оплате, сопутствующие и отладочные процедуры.
Листинг (занести в Модуль1 проекта Оплата за учебу )
Option Explicit Option Base 1 ' переменные формы приложения Public фам1 As String Public имя1 As String Public отчество1 As String Public групп1 As String Public месяц As String Public сумма As String Public бух As String Public дата As String ' переменные формы шаблона документа Public фамилия As String Public имя As String Public отчество As String Public группа As String Public месяц_опл As String Public сумма_опл As String Public фио_бух As String Public дата_опл As String Dim book(8) As String Dim dataMas(8) As String Dim i As Integer Sub Печать() 'процедура печати бланка 'Заносим информацию в массивы bookmarmas, datamas book(1) = «фамилия»: dataMas(1) = фамилия book(2) = «имя»: dataMas(2) = имя book(3) = «отчество»: dataMas(3) = отчество book(4) = «группа»: dataMas(4) = группа book(5) = «месяц_опл»: dataMas(5) = месяц_опл book(6) = «сумма_опл»: dataMas(6) = сумма_опл book(7) = «фио_бух»: dataMas(7) = фио_бух book(8) = «дата_опл»: dataMas(8) = дата 'заполнение полей квитанции: For i = 1 To 8 ActiveDocument.FormFields(ActiveDocument.Bookmarks(book(i)).Name).Result = dataMas(i) Next ActiveDocument.PrintPreview Выполняется предварительный просмотр печати. 'Для того чтобы реально распечатать документ, применяется метод PrintOut объекта Application (см. Help) UserForm1.Hide End Sub
В связи с различием переменных, принимаемых и передаваемых на печать, объявим как Public переменные двух видов: получаемые интерфейсной частью приложения и печатаемые в форме шаблона. Обратите внимание на то, что здесь все данные имеют тип String. Такие однотипные данные позволяют записывать их в поля формы в цикле, содержащем всего два оператора (см. описание листинга). |
|