0

当我更改表单上的某些内容然后切换到设计模式时出现以下错误:

您输入的表达式引用了一个已关闭或不存在的对象

Debug 指向我表单的 BeforeUpdate 事件中的代码;见下文:

Private Sub Form_BeforeUpdate(Cancel As Integer)

    Me.JobID = "Job" & Format(Me.ID, String(12 - Len("Job"), "0"))

End Sub

此代码只是从自动编号字段创建自定义主键;这是我做的第一件事,我已经在表单和设计视图之间切换了几个星期,没有问题。

有谁知道这可能是什么原因造成的?

4

1 回答 1

1

我可以提供一些我认为可以解决问题的建议,但我承认我不确定真正的原因。通过解决它,您可能能够自己发现原因。

当提到基础字段(而不是控件)时,我建议您使用“bang”而不是“dot”。这可能足以解决这个问题。

Private Sub Form_BeforeUpdate(Cancel As Integer)
    Me!JobID = "Job" & Format(Me!ID, String(12 - Len("Job"), "0"))
End Sub

您可能会尝试的另一件事是在不需要时消除该代码的运行:

Private Sub Form_BeforeUpdate(Cancel As Integer)
    If IsNull(Me!JobID) = True Then
        Me!JobID = "Job" & Format(Me!ID, String(12 - Len("Job"), "0"))
    End If
End Sub
于 2013-11-02T18:11:58.263 回答