powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VBA.Печать в txt полях док. Word даных из таблицы конект ADODB
3 сообщений из 3, страница 1 из 1
VBA.Печать в txt полях док. Word даных из таблицы конект ADODB
    #32942275
Yuriy Bogdan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите решить проблемку, плиз.
Есть некая Аксесовская база, в ней таблица base_zp, в которой даные ФИО, паспорт, и т.д. и договор в файле dogov.doc (МS Word). Как бы сделать так чтоб по нажатию кнопки печатались договора для всех записей базы. Начал реализовывать где-то так:
Private Sub Кнопка0_Click()
On Error GoTo Err_Кнопка0_Click

Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Set cnn = CurrentProject.Connection
Set rst = New ADODB.Recordset
With rst
.ActiveConnection = cnn
.CursorType = adOpenKeyset
.Open Source:="base_zp"
End With
rst.MoveFirst ' Создал соединение, стал на первую запись (кажеться)

Dim wda As Word.Application
Dim wdd As Word.Document
Dim intPrint As Integer ' Подготовка для работы с вордом

Set wdd = GetObject("c:\print\dogov.doc")
Set wda = wdd.Parent
-------------------------------------------------------------------------------------------------
Теперь суть вопроса
Раньше я чтоб вставить даные в текстовые поля или закладки(как они
названы МS поступал так

wdd.Bookmarks("B_NUMZ").Select ' вибрал закладку B_NUMZ
wda.Selection.TypeText Text:=sL ' задал ей значение переменной sL

Как получить даные из подключенной таблицы в поля, да еще и в цыкле
Сформировался договор, ушел на печать
Следующий
Вся возня из-за того что формы договоров бюрократы плодят как из рога изобилия, а данные в них теже. Теперь нужно пользователя научить в новом
договоре создать закладки с нужными именами и вроде как проблема решена.
...
Рейтинг: 0 / 0
VBA.Печать в txt полях док. Word даных из таблицы конект ADODB
    #32942382
AVVS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это довольно просто. Надо в вордовом документе разметить закладки (bookmarks) в тех местах, где должны появляться данные из базы.
После этого:
1. на каждую запись базы открываем исходный word-документ,
2. извлекаем данные из записи и пихаем их в места, размеченные букмарками
3. Закрываем документ с новым именем (которое надо генерировать автоматически)

повторяем п.п.1-3 нужное количество раз.
Печатаем. Радуем начальство.

Как автоматически вставлять данные в документ - см. хелп по VBA Word.
Главное - научиться правильно открывать и закрывать приложения word из VBA, чтобы он не оставался висеть в памяти.
...
Рейтинг: 0 / 0
VBA.Печать в txt полях док. Word даных из таблицы конект ADODB
    #32945519
byg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
byg
Гость
Спасибо за отклик.
Но проблема не в помещении даных в ворд. В двух последних строчках кода как раз показано как поместить переменную sL объявленную в коде прямо в закладку (bookmark) B_NUMZ. Как получить данные например из первого поля таблици в эту закладку активной записи таблицы.
А хелп вордовый я действительно не читал, видимо пришла пора.
Еще раз спасибо.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VBA.Печать в txt полях док. Word даных из таблицы конект ADODB
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]