У меня похожая ситуация, когда я хочу, чтобы пользователь подтвердил, сохранять ли изменения, и использовал событие BeforeUpdate формы, чтобы спросить пользователя, хотят ли они сохранить изменения. Кажется, это работает довольно хорошо, по крайней мере, в моем случае.
Private Sub Form_BeforeUpdate(Cancel As Integer)
If MsgBox("Do you want to save changes?", vbYesNo, "Confirm change") = vbNo Then
Cancel = True
Else
'Do Nothing
End If
End Sub