Dim cn As New ADODB.Connection
Dim DBName, conStr As String
DBName = "c:\CheckSystem.mdb"
conStr = "Provider=Microsoft.Ace.OleDB.12.0;Data Source =" & DBName & ";Persist Security Info=False;"
Set cn = New ADODB.Connection
If cn.State <> adStateOpen Then
cn.Open (conStr)
End If
同样的代码,在vb环境下通过
在vba下提示
cn.open 这一行,报错
1.尝试安装AccessDatabaseEngine无效
2.删除office2007重新安装office2007无效
3.
有请大神解答
这个出错,软件有错误 可参考https://blog.csdn.net/weixin_42750611/article/details/106038198
另外发现C:\Windows\SysWOW64和C:\Windows\System32下的
odbcad32.exe前者能正常使用,后者显示无法找到驱动程序
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
我自己来回答吧,
vb能有效使用,是由于vb可能不管C:\Windows\SysWOW64和C:\Windows\System32,只要其中一个odbcad32.exe有效,那vb就认为有效,
vba只认system32下的odbcad32.exe必须有效,有效是指access数据库可以配置,不能出错
那么解决方案就来了,只要安装64位版本的office就可以解决问题。(同时检查system32下的odbcad32.exe是否可用,基本就可以解决问题)
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y