3

我正在使用 vba 将我在 excel 2007 中的记录上传到 sql2012 数据库。
我在过去 3 个月中成功使用了以下代码,但现在失败并出现以下错误。

运行时错误'-2147467259 (80004005) odbc--调用失败

我在 VBA 中的代码:

Sub UpdateTable()
    Dim cnn As Object
    Dim wbkOpen As Workbook
    Dim objfl As Variant
    Dim rngName As Range
    Set wbkOpen = ActiveWorkbook
    ActiveSheet.Select
    Set rngName = Range(Range("A1"), Range("A1").End(xlToLeft).End(xlDown))
    rngName.Name = "TempRange"
    strFileName = wbkOpen.FullName
    Set cnn = CreateObject("ADODB.Connection")
    cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strFileName & ";Extended Properties=""Excel 12.0 Xml;HDR=Yes"";"
    nsql = "INSERT INTO [odbc;Driver=SQL Server;Server=dedr;Uid=pmac;Pwd=123456;Database=dpgrt].stmt"
    nJOIN = " SELECT * from [TempRange]"
    cnn.Execute nsql & nJOIN <<<<<<<<< this is error line.
    MsgBox "Uploaded Successfully"
    cnn.Close
    Set wbkOpen = Nothing
End Sub

这个错误昨天才出现。sql数据库没有变化。
请帮忙。

4

0 回答 0