powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как манипулировать из Word результатами запроса в БД
3 сообщений из 3, страница 1 из 1
Как манипулировать из Word результатами запроса в БД
    #33880880
Stas_Bm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как можно сделать запрос в БД (аксесовскую), чтобы потом можно было манипулировать содержанием полей БД в ворде.
Например, чтобы записи из базы стали доступны в VBA в виде массива MyArray .

Нашел как обратиться к БД:

With ActiveDocument.MailMerge
.MainDocumentType = wdFormLetters
.OpenDataSource _
Name:="C:\liter.mdb", _
LinkToSource:=True, AddToRecentFiles:=False, _
Connection:="TABLE Mytable", _
SQLStatement:="SELECT id, name FROM Mytable WHERE id<7"
End With

но как результат засунуть в массив недопер. Помогите кто знает.
...
Рейтинг: 0 / 0
Как манипулировать из Word результатами запроса в БД
    #33881131
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Использовать рекордсет и преобразовать его в массив с помощью метода GetRows.
...
Рейтинг: 0 / 0
Как манипулировать из Word результатами запроса в БД
    #33881624
Stas_Bm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ага, спасибо... то что доктор прописал :)

кому интересно вот что получилось
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Sub nnn()
Set objRecordset = CreateObject("ADODB.Recordset")

ConnectString = "Driver={Microsoft Access Driver (*.mdb)};DBQ=c:\liter.mdb"
        
objRecordset.ActiveConnection = ConnectString
objRecordset.Source = "SELECT name FROM Mytable WHERE Id<7"
objRecordset.Open
While Not objRecordset.EOF
    strRes = vbNullString
    For i =  0  To objRecordset.Fields.Count -  1 
        strRes = strRes & CStr(objRecordset.Fields(i).Value) & vbNewLine
    Next

     Selection.TypeText strRes 

     objRecordset.MoveNext
Wend
objRecordset.Close
Set objRecordset = Nothing

End Sub
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как манипулировать из Word результатами запроса в БД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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