acCmdSaveRecord不保存记录

时间:2015-11-04 13:18:49

标签: vba ms-access ms-access-2010

我有一个MS Access 2010应用程序。在表单中,可以输入新记录。因此,我在表单加载上转到新记录:

Private Sub Form_Load()    
    DoCmd.GoToRecord Record:=acNewRec
End Sub

输入信息后,点击保存按钮,保存记录,表格将转到新记录。

Private Sub btnSave_Click()
    DoCmd.RunCommand acCmdSaveRecord
    DoCmd.GoToRecord , , acNewRec
End Sub

代码被执行,但是,没有创建新记录。输入控件链接到表字段。

1 个答案:

答案 0 :(得分:0)

我会确保表单只在下面变脏时尝试保存。 我添加了一个错误处理程序来通知用户无法保存表单。

option explicit
private sub btnSave_Click()
on Error goto ErrTrap
if me.dirty= true then
     DoCmd.RunCommand acCmdSaveRecord
     DoCmd.GoToRecord , , acNewRec
end if

ErrTrap:
   MsgBox Err.Number & ": " & Err.Description
end sub

有一种方法可以避免docmd.runcommand;它会保存记录......但我从未使用过它:

if me.dirty=true then
   me.dirty=false
end if