Private Sub Кнопка13_Click()
' переменная wda ссылается на объект – абстрактное приложение Word
Dim wda As Word.Application
' переменная wdd ссылается на объект – документ приложения Word
Dim wdd As Word.Document
' если возникнет ошибка – перейдем
' на ее обработку по метке ErrStartWord
On Error GoTo ErrStartWord
'открываем документ
' устанавливаем связь переменной wdd с нашим документом,
' доступ к которому получаем командой GetObject
Set wdd = GetObject("F:\Накладная.docx")
' устанавливаем связь переменной wda с предком (Parent),
' который создал наш документ (т.е. с приложением Word)
Set wda = wdd.Parent
'делаем приложение Word видимым
wda.Visible = True
' ищем в коллекции Bookmarks закладку Факультет
' и выделяем ее методом Select
wdd.Bookmarks("Накладная").Select
' по месту выделения Selection методом TypeText вводим данные,
' полученные из элемента управления Аббревиатура формы Факультет
wda.Selection.TypeText Text:=Forms!Накладная![№ Накладной]
' выделяем следующие закладки, такие как,
' например, Специальность
wdd.Bookmarks("Дата").Select
' используем конструкцию With для более короткого доступа к объекту
With wda
' по месту выделения вставляем данные из подформы
.Selection.TypeText Text:=Forms!Накладная![Дата]
' относительно выделения смещаемся методом GoTo к закладке Фамилия,
' указывая ее имя параметром Name
.Selection.GoTo Name:="АЗС"
' и вновь имеем объект Selection, который
' уже указывает на новую закладку Фамилия
.Selection.TypeText Text:=Forms!Накладная![Название АЗС]
' аналогично производим заполнение остальных полей
.Selection.GoTo Name:="Адрес"
.Selection.TypeText Text:=Forms!Накладная![Адрес]
.Selection.GoTo Name:="Марка"
.Selection.TypeText Text:=Forms!Накладная![Поставка подчиненная форма].Form![Марка]
.Selection.GoTo Name:="Цена"
.Selection.TypeText Text:=Forms!Накладная![Поставка подчиненная форма].Form![цена]
.Selection.GoTo Name:="Количество"
.Selection.TypeText Text:=Forms!Накладная![Поставка подчиненная форма].Form![количество]
' активизируем документ методом Activate – теперь с ним можно работать,
' например, отпечатать справку на принтере…
.Activate
End With ' закрываем конструкцию With
' освобождаем переменные, чтобы они ни на что не ссылались,
' т.е. указывали на Nothing
Set wdd = Nothing
Set wda = Nothing
Exit Sub
' это метка обработчика ошибок – он будет формировать сообщение командой
' MsgBox с указанием номера, описания и информационной картинки в окне
ErrStartWord:
MsgBox Err.Description & " " & Err.Number, vblnformation
Exit Sub ' выход из программы при возникновении ошибки
End Sub