I too had a simular issue, I had some code to check if users had entered data and not saved properly but they still seemed to close the database without checking what they had done first. So I opted for this
'Here
Private Sub Form_Unload(Cancel As Integer)
'Cancel = Not mblnClose
End Sub...