一、网友问题描述:
用Access开发的一个程序,一共四个电脑使用,其中三台电脑正常,一台电脑安装按了Access2010正常,用了一个月显示后显:
作为事件属性设置而输入的表达式“加载”产生了如下错误:加载DLL错误,表达式的结果可能不是宏的名称,用户定义的函数的名称,或[Event Procedure]。对函数、事件或宏求值时可能有错误。
后来又卸载了Access2010,安装了Access2013文件又正常了,用了2个月了现在又出现第一次的情况,现在重装Access2013也不行,有知道怎么解决吗?错误提示如下图:
在另外一台电脑上则出现,作为事件属性设置而输入的表达式“打开”产生了如下错误:对象或类不支持的事件集,导致所有按钮都失效,如下图:
二、解决方法1:
经过检查测试,发现在出错的电脑上任意新建一个数据库,在里面新建窗体,写命令代码都出现这个错误提示,即任意代码都不能执行了,用注册ADO与DAO的方法http://www.accessoft.com/article-show.asp?id=315,
以及重新引用ADO与DAO都不能解决http://www.accessoft.com/article-show.asp?id=5049,询问后得知该电脑上安装了WPS软件,是因为WPS篡改了兼容性设置,导致整个Office没法使用代码。建议在使用Office的电脑上不要同时安装WPS,WPS软件会篡改设置的,安装了Office再安装WPS,你的Office代码就没法使用了,如一定要安装WPS与Office并存,请将WPS高级配置改一下兼容设置就行,如下图:
三、解决方法2:
经过上述方法1如果还不能解决的,则用附件中注册表文件恢复一下默认注册表就好了。
附 件:
点击下载此附件
这个问题是由于WPS修改了DAO引用路径引起的,用附件里面的恢复注册表方法就可以解决,恢复注册表后,需要再手动引用一下DAO;
手动引用DAO方法:
进入窗体设计状态→代码区(或者按Alt+F11键进入)→工具→引用→勾选Microsoft DAO 3.6 Objsct Library即可。
如果是32位的操作系统则手动引用路径如下:
C:\Program Files\Common Files\Microsoft Shared\DAO\dao360.dll
如果是64位的操作系统则手动引用路径如下:
C:\Program Files (x86)\Common Files\Microsoft Shared\DAO\dao360.dll
引用成功后如下图:
所以 要想安然,最好还是把wps卸载,并且通过证书方式把kingsoft旗下的产品禁用,就是不能安装wps。