我正在尝试使用ADO DSN连接到Access数据库。
StrPath = Sheets("Sheet1").Range("DB_location")
strCon = "DSN=MS Access Database;DBQ=" & StrPath & ";"
Set con = New ADODB.Connection
con.Open strCon
我可以在我的机器上连接到DB而没有任何问题。但是,当我尝试在另一台PC上运行这个确切的宏时,我在最后一行遇到了这个问题:
我认为这是由于数据库引擎,但从微软的网站安装“Microsoft Access数据库引擎2010可再发行组件”并没有解决这个问题。存在VBA编辑器中的所有必要参考。 DB或宏没有问题,因为我在另一台PC上检查过,但是这台特定的计算机遇到了这个问题。
更改
strCon = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = " & StrPath & ";"
解决了这个问题,这意味着问题是由DSN引起的。有没有人猜测这个问题可能来自哪里?
我有这个错误,它最终成为我的主键。当我将主键固定在表格中时,它就像一个魅力。