|
|||||||
Время создания: 10.10.2019 07:05
Текстовые метки: Connect Excel To Access, ADO, Connection, Recordset, Excel-Access, CursorLocation, RecordCount
Раздел: !Закладки - VBA - Access - ADO
Запись: xintrea/mytetra_db_adgaver_new/master/base/1570680318sot44eyn6o/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
Подключение из Excel к Access через VBA Полезная функция по подключению из Excel к Access (предварительно надо подключить библиотеку MS ActiveX Data Objects 2.8 Library, как показано на картинке). Проверено - работает. VBA Добавление Reference Public Sub test_db()
ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & ActiveWorkbook.Path & "\Database4.accdb; Jet OLEDB:Database;"
Dim con As New ADODB.Connection con.Open ConnectionString
On Error GoTo not_table con.Execute ("SELECT TOP 1 * FROM Customers") con.Close Exit Sub not_table: con.Close
End Sub Вам нужно использовать статический курсор. Для этого вам нужно явно создать объект RecordSet, вот так: Set objRS = Server.CreateObject("ADODB.Recordset") objRS.CursorLocation = adUseClient objRS.Open "SELECT * FROM " & viewName & ";", objConn, adOpenStatic,adLockReadOnly, adCmdText Set objRS = Server.CreateObject("ADODB.Recordset") objRS.CursorLocation = adUseClient objRS.Open "SELECT * FROM " & viewName & ";", objConn, adOpenStatic,adLockReadOnly, adCmdText Неявно созданные RecordSets имеют серверные курсоры, что приводит к возвращению значения -1. Для получения дополнительной информации: http://www.adopenstatic.com/faq/recordcounterror.asp http://www.adopenstatic.com/faq/recordcounterror.asp
|
|||||||
Так же в этом разделе:
|
|||||||
![]() |
|||||||
|
|||||||
|