VBA - ошибка времени выполнения '2147217908 (80040e0c)'

Я получаю эту ошибку: "Не задан текст команды" Ошибка времени выполнения "2147217908 (80040e0c)" для объекта команды ". Я довольно новичок в VBA, помощь будет очень признателен! Обращаясь к другим ошибкам / вопросам stackru.

Когда я нажимаю "Отладка", он выделяет: oRs.Open sSQL, oCn Здесь что-то не так?

'fixing:run time error '-2147467259 automation error unspecified error

Sub Unprotect_WorkSheet_With_Password()
Sheets("Sheet1").Unprotect "YourPassword"
End Sub



    Sub Consolidate()

    Dim sSQL        As String       'SQL String
    Dim oCn         As Object       'Connection
    Dim oRs         As Object       'Recordset
    Dim vFile       As Variant      'File Name
    Dim sCustomer   As String       'Customer ID
    Dim sItem       As String       'Inventory Item ID

'   Get filenames
    vFile = Dir(ThisWorkbook.Path & "\ml\testdirectory\*.csv")

'   Create SQL
    While vFile <> vbNullString
        If sSQL <> vbNullString Then sSQL = sSQL & vbCr & "Union " & vbCr
        sCustomer = Split(vFile, "-")(0)
        sItem = Split(Split(vFile, "-")(1), ".")(0)
        sSQL = sSQL & "Select '" & sCustomer & "' as Customer, '" & sItem & "' as Item, * from [" & vFile & "]"
        vFile = Dir
        DoEvents
    Wend
'   Create Connection Objects
    Set oCn = CreateObject("ADODB.Connection")
    Set oRs = CreateObject("ADODB.Recordset")

    oCn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
            "Data Source=" & ThisWorkbook.Path & ";" & _
            "Extended Properties=""Text;HDR=YES;FMT = CSVDelimited"";"
    oRs.Open sSQL, oCn
    Debug.Print sSQL

    If Sheet1.ListObjects.Count > 0 Then Sheet1.ListObjects(1).Delete
    Sheet1.ListObjects.Add( _
        SourceType:=xlSrcQuery, _
        Source:=oRs, _
        Destination:=Sheet1.Range("C6")).QueryTable.Refresh

    oRs.Close
oCn.Close

    Set oRs = Nothing
    Set oCn = Nothing

End Sub

1 ответ

Сжать и отремонтировать accdb. Убедитесь, что база данных правильно закрыта и пользователь вышел из системы, это будет иметь дело с ошибкой автоматизации.

Другие вопросы по тегам