VBA 关闭当前表单并在新记录上返回到其他表单



我的访问数据库中有两个表单,"调整表单"和"最终表单"。在"最终表单"上,有一个按钮,单击该按钮时,我希望它关闭当前表单并打开新记录的调整表单。

仅供参考-调整表可能已经打开,因此如果是这种情况,只需关闭"最终表格"并移至新记录即可。

这是我到目前为止所拥有的:

Private Sub Command438_Click()
    DoCmd.RunCommand acCmdSaveRecord
    DoCmd.Close
    DoCmd.GoToRecord , "Adjustment Form", , acNewRec
End Sub

但是,当我运行它时,我收到错误"您无法转到指定的记录"。

知道如何纠正这一点吗?

在"AdjustForm"上创建一个命令按钮,并将其命名为"cmdAddRec"。单击时创建一个新记录。您可以在命令按钮中向编码添加内容,例如转到要输入数据的控件。然后将代码修改为:

Private Sub Command438_Click()
    DoCmd.OpenForm "Adjustment Form"
    cmdAddRec_Click
    DoCmd.Close
End Sub

这段代码应该有效:

  Dim f       As String
  f = "frmAdjustMent"     ' name of form to open
  ' save record
  If Me.Dirty = True Then Me.Dirty = False
  ' check if Adjustent form is open
  ' (if not, then open it)
  If CurrentProject.AllForms(f).IsLoaded = False Then
     DoCmd.OpenForm f
  End If
  DoCmd.GoToRecord acDataForm, f, acNewRec
  ' close current form
  DoCmd.Close acForm, Me.Name

最新更新