2017-02-27 93 views
0

我與ME.UNDO命令的問題,以防止訪問關閉表單的變化時,2013年Me.undo在VBA訪問2013

我有一個鏈接到包含一個工作表的表的形式。此表單是隻讀的,以防止意外的用戶更改。爲了能夠進行更改,用戶需要雙擊一個項目才能調出另一個與此特定工作項目相關的表單,然後對其進行更改。我有一個保存按鈕供用戶單擊以保存更改。但如果用戶只是關閉這個表格,我做不是想保存更改。我在關閉事件中使用了me.undo(並且這是該事件中唯一的代碼行)。不知何故,它仍然在保存它。每當我在那裏輸入內容並關閉它時,它就會反映工作表格中的變化。

請任何想法和建議。謝謝你們

+0

plusone爲自我打敗的標題。 '如果Me.undone然後WoeIsMe' – ThunderFrame

+3

你不能在關閉事件中使用撤銷 - 這太遲了。看看這篇文章:https://bytes.com/topic/access/answers/810694-prevent-saving-when-just-closing –

回答

0

如果你只寫一條記錄,並且想在關閉時刪除那條記錄,那麼試試這個。但首先,刪除您的OnClose事件,請注意,此事件發生在卸載表單的事件。

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

如果用戶可以創建多個記錄,那麼這隻會刪除插入的最後一行。