似乎这已经被问了几次。
在表单上工作几周后,当我点击一个按钮时突然出现错误:“作为事件属性输入的表达式单击”产生以下错误:Microsoft Access与之通信时出现问题OLE服务器或Active X控件。“
对于表单上的任何控件事件(例如,在其他文本字段上更新后)
也会发生这种情况我尝试重新安装Access无济于事。
不确定这是否相关,但我在表单上也有一个子表单。我有一个“on-click”事件可以在子窗体上工作,但是当代码在以下行中断开时(之前有效):
Me.Parent.orderID = Null
我得到的错误是:“对象'_Form_frmOrderQuery'的方法'父'失败了 (frmOrderQuery是子表单的名称)
无论如何,这一切都有效,直到我通过添加更多字段来更改子窗体的查询。
最后:所有事件处理程序(按钮单击,更新后等)都可以在数据库中的其他表单上运行。
非常感谢任何帮助/建议。
谢谢,
杰夫
答案 0 :(得分:2)
弄清楚,这很愚蠢。无论表单有问题,只要将其复制并删除旧表单即可。重命名新窗体,使其与上一个相同(这样,所有的vba和东西都可以使用)。完成!
答案 1 :(得分:1)
我使用Access运行时环境遇到了类似的问题。似乎问题可能出在......非Unicode语言设置中。
您添加到查询中的列的名称是否包含一些有问题的字符?
请参阅此文章以供参考:https://support.microsoft.com/en-us/kb/907337。它包含一个帮助我的决议。
一切顺利!
答案 2 :(得分:0)
就我而言,此问题是由于带重音符号而发生的。
我在使用不同于我创建的计算机的非Unicode语言设置的计算机上运行VBA代码 事件处理程序,函数或子例程。注意如果VBA代码包含重音字符或特殊字符,也可能会出现此问题。此外,如果Access数据库中的对象名称包含重音字符或特殊字符,则可能会发生此问题。
最适合我的解决方案:
”如果在基于Microsoft Windows XP的计算机或基于Windows 2000的计算机上运行VBA代码,则可以通过更改所在计算机上的非Unicode语言设置来解决此问题。运行VBA代码。要验证并更改非Unicode语言设置,请按照以下步骤操作。
注意由于存在多个版本的Microsoft Windows,因此以下步骤在您的计算机上可能会有所不同。如果是这样,请参阅您的产品文档以完成这些步骤。
点击开始, 点击运行, 键入Intl.cpl,然后单击“确定”。
在“高级”选项卡上的“非Unicode程序的语言”下,验证该语言与您在其上创建事件处理程序,函数或子例程的计算机上的语言匹配。如果语言不同,请单击所需的语言,然后单击“确定”。 重新启动计算机。
答案 3 :(得分:0)
正如其他用户提到的那样,问题在于元素(表单控件等)名称中使用了非英文符号。 我的解决方法: