我在数据输入表单上收到“运行时错误'424':需要对象”

I am getting a "Run-time error '424': Object Required" on a data entry form

提问人:Noel de la Rosa 提问时间:11/7/2023 更新时间:11/7/2023 访问量:56

问:

此数据输入表单的顶部有一个搜索框,我在表单的 OnCurrent 和 BeforeInsert 事件中包含了一些代码,以对搜索框中发生的情况做出反应。

在 AfterInsert 事件中:

Private Sub Form_AfterInsert()
 
    Records.MoveLast
    TotalRecords = Records.RecordCount
    Exit Sub

End Sub

当我输入新记录并从最后一个字段中取出时,我收到运行时 424 错误,在点击调试后,它会将我带到此代码。关于如何解决这个问题的任何建议?

我尝试输入错误处理程序,但问题仍然存在。

VBA MS-Access 运行时错误

评论

0赞 June7 11/7/2023
MoveLast 行是否触发错误?还是代码甚至没有达到这一点?不是错误来源,但不需要退出子行。此外,应声明所有变量。TotalRecords 是字段还是变量?如果它是一个字段,为什么要将其保存到表格中?我从未使用过 AfterInsert 或 BeforeInsert。可能应该使用 BeforeUpdate 或 AfterUpdate。
1赞 Andre 11/7/2023
Records不是 Access 对象模型的一部分。这是“必需的对象”。您可能正在寻找 .Me.RecordSet
0赞 Noel de la Rosa 11/8/2023
感谢您澄清问题!修好了

答:

0赞 Gustav 11/7/2023 #1

它是使用:RecordsetClone

Private Sub Form_AfterInsert()

    Dim Records As DAO.Recordset

    Set Records = Me.RecordsetClone

    Records.MoveLast
    TotalRecords = Records.RecordCount
    Records.Close

End Sub