我有一個在Access 2010數據庫中的表與Excel表中列名稱相同的列名稱。我必須刪除Access表數據內容,然後將數據從我的宏中抽取出來,然後將excel表單中的數據輸入到它中。現在,我試着查看/測試是否可以將我的Excel數據抽取到Access中的空表中。一旦我得到這個工作,我可以'傾銷Excel數據'刪除內容'工作。運行時錯誤無法識別的數據庫,同時將數據從excel 2010導出到訪問表2010使用excel vba
這裏是我的Excel VBA宏代碼:
Sub ADOFromExcelToAccess()
'exports data from the active worksheet to a table in an Access database
Dim cn As ADODB.Connection, rs As ADODB.Recordset, r As Long
' connect to the Access database
Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"Data Source=C:\Users\shress2\Documents\TSS_Certification\TSS_Certification.accdb;"
' open a recordset
Set rs = New ADODB.Recordset
rs.Open "t_certification_051512", cn, adOpenKeyset, adLockOptimistic, adCmdTable
' all records in a table
r = 2 ' the start row in the worksheet
Do While Len(Range("A" & r).Formula) > 0
' repeat until first empty cell in column A
With rs
.AddNew ' create a new record
' add values to each field in the record
.Fields("Role") = Range("A" & r).Value
.Fields("Geo Rank") = Range("B" & r).Value
.Fields("Geo") = Range("C" & r).Value
' add more fields if necessary...
.Update ' stores the new record
End With
r = r + 1 ' next row
Loop
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
末次
我添加工具 - >引用,然後選擇Microsoft ActiveX數據對象6.0對象庫。
我m到處運行時錯誤「2147467259(80004005): 無法識別的數據庫格式「C:\用戶\ shress2 \文檔\ TSS_Certification \ TSS_Certification.accdb
任何原因?我該如何解決它?謝謝。
看到這個:http://connectionstrings.com/access-2007 –
我想你可以只添加一個引用到Microsoft Access庫和解決這個更容易,不是嗎? –