我在Access中有一个带有“提交”按钮的表单,可以将记录添加到我的表中。代码如下:
Private Sub SaveRecord_Click()
If (IsNull(Description)) Then
Beep
MsgBox "The Description Field is empty. Please add a description.", vbCritical
ElseIf (IsNull(Category)) Then
Beep
MsgBox "The Category Field is empty. Please add a Category.", vbCritical
Else
DoCmd.RunCommand acCmdSaveRecord
DoCmd.RunCommand acCmdRecordsGoToNew
End If
Forms!frm_DataEntry!dataEntry_subform.Requery
End Sub
我还有一个Before_Update事件,表单会询问用户是否要提交尚未提交的记录。请参阅下面的代码。
Private Sub Form_BeforeUpdate(Cancel As Integer)
If Me.Dirty Then
If MsgBox("The current record have not been saved. Do you want to save?", vbYesNo + vbQuestion, "Save Record") = vbNo Then
Me.Undo
End If
End If
Exit_BeforeUpdate:
Exit Sub
Err_BeforeUpdate:
MsgBox Err.Number & " " & Err.Description
Resume Exit_BeforeUpdate
End Sub
我尝试修改代码并使用其他事件,但我无法完成以下操作: 1.如果我单击“提交”按钮,我不希望用户看到一个消息窗口,询问他们是否要保存记录。我怎么能隐藏这条消息?在保存之前可以将表单的Dirty设置为False(行DoCmd.RunCommand asCmdSaveRecord)。我尝试使用Me.Dirty = False,但它没有用。感谢。
答案 0 :(得分:2)
创建一个新的布尔变量。如果在消息框显示之前显示为true,则将其设置为true。
blnDoNotShowMessage = True
If blnDoNotShowMessage Then
Exit Sub
End If