You could do something like:
If IsNull (Me.AutonumberField) or Me.AutonumberField = 0 Then
DoCmd.Close (or whatever)
Exit Sub
End If
That way, if it's a new record that the user hasn't touched and they want to close the form they can. But, if they've made an entry onto the form (and created an entry in the autonumber field) then they can't close or move from the record without completing all the required fields.
Or something like that!