首页 > 解决方案 > 添加一行后卸载/关闭弹出表单

问题描述

我在 AccessfrmAddComposerWork中打开了一个弹出表单,其中 Data Entry 设置为Yes,其中有 2 个文本框:一个用于作曲家姓名,另一个用于工作标题。

填写最后一个文本框后,当我点击ENTER(用新记录更新后面的表格)时,我也想关闭表单。我尝试了几个事件,在这些事件上添加了以下 VBA 指令:

DoCmd.Close acForm, Me.frmAddComposerWork

但是,表单保持打开状态并且很容易收到新记录(我根本不想要)。

添加单行后如何使表单自行关闭?

标签: vbams-access

解决方案


让表单从其After Insert事件中自行关闭。

Option Compare Database
Option Explicit

Private Sub Form_AfterInsert()
    DoCmd.Close ObjectType:=acForm, ObjectName:=Me.Name, Save:=acSaveNo
End Sub

据我了解,这种简单的方法可以实现您的目标:

  1. 您在数据输入模式下打开了表单——这意味着它只显示一条新的空白记录。
  2. 用户可以为新行添加值,但不能导航到任何现有行。
  3. 用户完成添加该单个新行后,表单将关闭。

推荐阅读