Нет передачи данных в Access с набором записей ADODB - PullRequest
0 голосов
/ 11 октября 2018

Я создал базу данных со связанным доступом Excel с VBA, которая работает при использовании централизованно сохраненной версии, но не при сохранении локальной копии.

Я использовал инструмент отладки, и код пропускает цикл Forв локально сохраненной копии.

For x = 2 To nextrow
        DatabaseData.AddNew
        For i = 1 To 35
            DatabaseData(Cells(1, i).Value) = Sheet18.Cells(x, i).Value
            Next i
            DatabaseData.Update
        Next x

Я думаю, что это потому, что набор записей (DatabaseData) не распознается (не уверен, что это правильный термин).

Кодниже

Sub CopyDatatoAccess()
    Dim DatabaseConn As ADODB.Connection
    Dim DatabaseData As ADODB.Recordset
    Dim Pathway
    Dim x As Long, i As Long
    Dim nextrow As Long

    On Error GoTo errorhandler:

    Pathway = Sheet18.Range("AQ2").Value
    nextrow = Sheet18.Range("AR2")


    Set DatabaseConn = New ADODB.Connection

    If Sheet18.Range("A2").Value = "" Then
    MsgBox "ARF form is not present for Upload"
    Exit Sub
    End If

    DatabaseConn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Pathway

    Set DatabaseData = New ADODB.Recordset

DatabaseData.Open Source:="ARFs", _
    ActiveConnection:=DatabaseConn, _
    CursorType:=adOpenDynamic, _
    LockType:=adLockOptimistic, _
    Options:=adCmdTable

For x = 2 To nextrow
    DatabaseData.AddNew
    For i = 1 To 35
        DatabaseData(Cells(1, i).Value) = Sheet18.Cells(x, i).Value
        Next i
        DatabaseData.Update
    Next x

    DatabaseData.Close
    DatabaseConn.Close

    Set DatabaseData = Nothing
    Set DatabaseConn = Nothing

MsgBox "The ARF is now uploaded"
Application.ScreenUpdating = True

Sheet18.Cells.Range("AK2").Value = Sheet18.Cells.Range("AK4").Value + 1

   On Error GoTo 0
   Exit Sub
errorhandler:

    Set DatabaseData = Nothing
    Set DatabaseConn = Nothing
    MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure Export_Data"
    End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...