在 docmd.close 实际关闭表单之前,必须单击访问 VBA 命令按钮两次(在单击事件上)

问题描述 投票:0回答:1

我有一个 MS Access 表单,其中有一个命令按钮,单击该按钮应关闭该表单。当触发 on click 事件时,会触发 vba 代码。

问题是,当单击命令按钮时,它不会关闭表单。我必须再次单击命令按钮才能触发代码并关闭表单。

这不是 onclick 事件的正常行为。第一次单击时不会触发 vba 代码。它仅在第二次单击时触发。

我在多种表单和不同的访问数据库中都遇到了这个问题。我无法确定为什么会发生这种情况。

我目前正在使用 Office 365 的 MS Access,但在其他版本的 MS Access 中遇到了相同的问题

有人经历过这种情况吗?非常感谢我能得到的任何帮助。

非常基本的代码:

Private Sub btnRtnHome_Click()
Dim stDocName As String

stDocName = Me.Name
DoCmd.Close acForm, Form_Daily_Collections.Name, acSaveYes
End Sub

命令按钮应在单击按钮并触发 on click 事件时一键关闭表单。

我尝试重新创建表单并重写代码。我已注释掉代码以尝试隔离问题。我仍然无法确定导致此问题的原因。

ms-access
1个回答
0
投票

如果按钮是给定的形式,那么你想使用这个:

 DoCmd.Close acForm, me.Name

您肯定不希望使用“acSaveYes”“保存”表单,因为这适用于保存表单设计而不是表单数据。

通过使用 me.name,这样的代码并不关心你是否拼写错误的表单,或者更改了表单的名称。

因此,上述内容应该可以解决您的问题,除非还有您未在此处分享的其他问题。

我还会在 VBA 编辑器中进行调试->编译,以确保不存在编译错误,如果存在任何错误,请修复这些错误。

© www.soinside.com 2019 - 2024. All rights reserved.