命令或操作“ SaveRecord”现在不可用

时间:2019-10-21 07:53:54

标签: vba ms-access

使用此代码时:

If Me.BU_DAT_ZAHL < Date Then
    Me.BU_DAT_ZAHL = Date
    Call MsgBox("Zahlungsdatum wurde auf heute gestellt!", vbCritical + vbOKOnly, "Formalprüfung Anweisung")
    DoCmd.RunCommand acCmdSaveRecord
End If

在以下行中:“ DoCmd.RunCommand acCmdSaveRecord” ms-access引发以下错误(nr。2046)

The Command or Action 'SaveRecord' isn't available now

有人知道为什么会引发此错误吗?有没有办法找出问题所在?

我们已经尝试过:

  • 与我一起设置焦点。setFocus=>不变

  • 通过sql RunSql更新=>写冲突

1 个答案:

答案 0 :(得分:1)

尝试设置 Dirty 属性:

If Me.BU_DAT_ZAHL < Date Then
    Me.BU_DAT_ZAHL = Date
    Me.Dirty = False
    Call MsgBox("Zahlungsdatum wurde auf heute gestellt!", vbCritical + vbOKOnly, "Formalprüfung Anweisung")
End If

如果该操作也失败,则说明某些操作阻止了保存操作。

请注意-注意不要吓到用户。这种情况绝非关键,您的代码已解决了这种情况,而您所希望的只是让用户知道:

Call MsgBox("Zahlungsdatum wurde auf heute gestellt.", vbInformation + vbOKOnly, "Formalprüfung Anweisung")