用于添加记录并随后查看/编辑该记录的按钮

时间:2018-06-29 06:21:32

标签: access-vba subforms

关于这个编码问题,您能帮我吗?

我有以下三种形式:

1)frmAuditProceduresMain –一种主要形式,其中包含稍后将使用的数据。

2)frmAuditProceduresSummarySubFrom –是上述frmAuditProceduresMain的子形式。该表单包含触发代码的按钮。

3)frmAuditProceduresDetails –在frmAuditProceduresSummarySubFrom中按下按钮时打开的独立表单。

frmAuditProceduresSummarySubFrom和frmAuditProceduresDetails都包含一个名为ProcedureName的字段。

最初,我打开frmAuditProceduresMain,并通过它对它的子窗体(其名称为frmAuditProceduresSummarySubFrom)的ProcedureName字段中的数据进行纠正,然后按下该记录旁边的按钮。

当按下该按钮时,frmAuditProceduresDetails应该打开,并且这是第一次添加该记录,因此我刚刚添加的ProcedureName应该自动添加到frmAuditProceduresDetails的ProcedureName字段中,另外还要添加来自frmAuditProceduresSummarySubFrom的另一个字段,称为ProcedureID从主要形式(frmAuditProceduresMain)的字段中获取数据。

但是如果记录已经存在,我需要在按下按钮时才能在frmAuditProceduresDetails上查看/编辑该记录。

我编写了以下代码,但是它将frmAuditProceduresDetails的所有字段都返回为空,我不知道为什么:

Public Sub cmdAuditProceduresDetails_Click()

DoCmd.Save
Form.Refresh

DoCmd.OpenForm "frmAuditProceduresDetails", acNormal, , , acFormAdd, acWindowNormal

If Forms!frmAuditProceduresDetails!ProcedureName <> Me.ProcedureName Then

Forms!frmAuditProceduresDetails!ProcedureName = Me.ProcedureName
Forms!frmAuditProceduresDetails!ProcedureID = Me.ProcedureID

Forms!frmAuditProceduresDetails!AuCode = Me.Parent!AuCode
Forms!frmAuditProceduresDetails!AuName = Me.Parent!AuName
Forms!frmAuditProceduresDetails!AuditCycle = Me.Parent!AuditCycle

DoCmd.RunCommand acCmdRefresh

Else

DoCmd.OpenForm "frmAuditProceduresDetails", , , "ProcedureName = '" & Nz(Me.ProcedureName, "") & "'"

End If

End Sub

如果有人可以帮助我,我将不胜感激。

致谢。

Raya。

0 个答案:

没有答案