返回列表 上一主題 發帖

vba使用ADO將EXCEL資料導入到SQL Server

vba使用ADO將EXCEL資料導入到SQL Server

Sub test()
    Dim cn As ADODB.Connection
    Dim strSQL As String
    Dim lngRecsAff As Long
    Set cn = New ADODB.Connection
    cn.Open "Provider=SQLOLEDB;Data Source=xxx;" & _
        "Initial Catalog=Mydata;User ID=sa;Password=54123"

       'Import by using OPENROWSET and SELECT query.
    strSQL = "SELECT * INTO Newtable FROM " & _
        "OPENROWSET('Microsoft.ACE.OLEDB.12.0', " & _
        "'Excel 12.0;Database=C:\Users\My\Desktop\222.xlsx', " & _
        "[Sheet1$])"
    Debug.Print strSQL
    cn.Execute strSQL, lngRecsAff, adExecuteNoRecords
    Debug.Print "Records affected: " & lngRecsAff

    cn.Close
    Set cn = Nothing
End Sub
Wrong.png

使用sql server連結伺服器Excellink
Select * From Openquery(Excellink,'Select * from [sheet1$]')
可以正確導入Excel數據到Sql Server

然而用VBA ADO導入 就會報錯,請問是否是權限問題?

        靜思自在 : 【生命在呼吸間】佛陀說:「生命在呼吸間。」人無法管住自己的生命,更無法擋住死期,讓自己永住人間。既然生命去來這麼無常,我們更應該好好地愛惜它、利用它、充實它,讓這無常、寶貴的生命,散發它真善美的光輝,映照出生命真正的價值。
返回列表 上一主題