Excel电子表格,能很方便地录入数据。但是如果我们不想让用户直接在工作表上录入数据,而是通过一个另一个窗体或者其他界面录入呢?
那么我们可以通过ADO(ActiveX Data Objects,以实现访问关系或非关系数据库中的数据)来录入数据
如图所示,在Excel工作表中把数据添加到“Website.mdb"数据库中的一个表中。
详细VBA代码:
Sub ADO录入数据到Access()
Dim cnn As Object
Dim rst As Object
Set cnn = CreateObject("ADODB.Connection")
Set rst = CreateObject("ADODB.recordset")
Dim sql As String
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & "F:Website.mdb"
' sql = "insert into news (vtime,week,lunar,weather,title,content) VALUES ('" & [D3].Value & "','" & [D5].Value & "','" & [D7].Value & "','" & [D9].Value & "','" & [D11].Value & "','" & [D13].Value & "')"
sql = "insert into news (vtime,week,lunar,weather,title,content) VALUES ('" & [D3].Value & "','" & [D5].Value & "','" & [D7].Value & "','" & [D9].Value & "','" & [D11].Value & "','" & [D13].Value & "')"
' 文本用'...',日期用#...#()
cnn.Execute sql
cnn.Close
Set cnn = Nothing
End Sub
注:如果是新版的Access,连接字符串需要改为:cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;" & "Data Source=" & "F:Website.accdb"
摘自:小智雅汇(头条号)