【问题标题】:Microsoft Access VBA on open errorMicrosoft Access VBA 打开错误
【发布时间】:2017-07-24 21:54:04
【问题描述】:

基本上,我使用数据库中的数据填充我的表单。为此,我有一个 onopen 事件,里面只有这段代码:

Me.Requery

直到昨天一切都很好,突然发生了错误。错误状态:

您作为事件属性输入的表达式 OnOpen 产生了以下错误:指令在类型块之外无效。

它在描述中的附加说明:

  • 表达式可能不会产生宏名称、用户定义函数名称或 [事件过程]
  • 评估函数、事件或宏时可能出错。

当我去显示帮助时,它说:

当事件由于无法评估事件逻辑的位置而无法运行时,会发生此错误。例如,如果将表单的 OnOpen 属性设置为 =[Field],则会发生此错误,因为宏或事件名称应在事件发生时运行。

但是,当我点击消息离开时,一切都正确加载。

我正在使用: -Microsoft Access 2013


问答:

你的代码编译成功了吗?

是的,其余的工作正常。它还将所有内容正确加载到表单中。但是每次我启动它时,都会弹出这个信息。

编辑:我刚刚注意到我的所有点击事件现在都会抛出相同的错误。

你能展示整个代码吗?

我实际上已将其他所有内容都注释掉以解决错误。如果我删除 onopen 事件,信息框就会消失。

【问题讨论】:

  • 这是 Access 365 吗?通常这是编译而不是运行时错误。你的代码编译成功了吗?你能展示整个代码吗?
  • 打开 VBA 编辑器并在调试下单击编译。保存并重新打开。这应该可以解决问题。
  • 天哪,谢谢,我确实找到了错误。我忘记了我已经创建了几类枚举类型,并且我确实忘记了为一个变量添加访问修饰符。请给出答案,以便我接受。
  • 突然出现同样的问题,编译顺利,

标签: vba ms-access compiler-errors


【解决方案1】:

如 cmets 中所述,编译可以通过查找错误访问修饰符等错误来解决问题
当编译顺利时,应该删除 Form_Load 函数并让 IDE 重新创建它。这解决了我的问题,认为显然没有观察到代码变化。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-13
    • 2019-01-27
    • 2018-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-27
    相关资源
    最近更新 更多