我正在尝试使用ADODB将Visual Basic连接到MS Access。但是当我执行我的代码时,它会提示:“无法找到提供程序。可能无法正确安装。”但是当我检查我的目录时,我已经安装了“msjetoledb40.dll”。
这是我的代码:
Dim conn As ADODB.Connection, rec As ADODB.Recordset
Sub sample()
Set conn = New ADODB.Connection
conn.Open ("Provider=Microsoft.Jet.OLEDB 4.0;Data Source=C:\sample.mdb;Persist Security Info=false;")
End Sub
答案 0 :(得分:3)
这会更好:
Sub sample()
Dim conn As ADODB.Connection, rec As ADODB.Recordset
Set conn = New ADODB.Connection
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\sample.mdb;"
conn.Open
End Sub
你错过了一点。
Microsoft.Jet.OLEDB 4.0 => Microsoft.Jet.OLEDB.4.0
答案 1 :(得分:2)
确认运行脚本的MS Office版本。如果已安装MS Office 2013或更高版本,则应修改以下连接字符串:
Provider=Microsoft.Jet.OLEDB 4.0;Data Source=C:\sample.mdb;Persist Security Info=false;
为:
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\sample.mdb;Persist Security Info=false;
至少,这解决了我的问题。
答案 2 :(得分:0)
我的解决方案:
错误3706
cs = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & sPath & ";Persist Security Info=False;"
只需更改12.0 for 15.0
cs = "Provider=Microsoft.ACE.OLEDB.15.0;Data Source=" & sPath & ";Persist Security Info=False;"
并且有效,总是必须尝试更改控制器的版本!。