【问题标题】:Me.undo to prevent changes when closing a formMe.undo 以防止在关闭表单时进行更改
【发布时间】:2021-01-14 09:21:00
【问题描述】:

我想使用ME.UNDO 命令来防止在 Access 2013 中关闭表单时发生更改。

我有一个链接到包含工作清单的表格的表格。此表单是只读的,以防止意外更改。

要进行更改,用户需要双击一个项目以调出另一个与该特定工作项目相关的表单,然后对其进行更改。
我有一个保存按钮供用户单击以保存更改。如果用户只是关闭此表单,我确实不想保存更改。

我在关闭事件中使用me.undo(这是该事件中唯一的代码行)。它仍在工作清单表单中保存更改。

【问题讨论】:

  • 加一为弄巧成拙的标题。 If Me.undone Then WoeIsMe
  • 您不能在关闭事件中使用撤消 - 为时已晚。看看这篇文章:bytes.com/topic/access/answers/…

标签: vba ms-access


【解决方案1】:

如果您只写入一条记录,并且想在关闭时删除该记录,请尝试此操作。但首先,删除您的 OnClose 事件,注意它会在表单的 Unload 事件上触发。

Private Sub Form_Unload(Cancel As Integer) 
   On Error Resume Next 
   DoCmd.SetWarnings False
   DoCmd.RunCommand (acCmdUndo)
   DoCmd.SetWarnings True 
End Sub

如果用户可以创建多条记录,那么这只会删除插入的最后一行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-03
    • 1970-01-01
    相关资源
    最近更新 更多