Combining the functions into one:
The Me.Undo is like hitting escape. The Delete will then bring up an error as the record no longer exists, hence the resume next.Code:Me.Undo On Error Resume Next DoCmd.RunSQL "DELETE * FROM Table1 WHERE ID=" & Me!ID & ";" Me.Requery