Hmmmm, I just tested your code and it works for me.
I set the query for the record source so that there were no records returned. The message box displayed and the form did not open/display.
Set the query so that records were returned. The form opened without the message box....
I used
Code:
Private Sub Form_Open(Cancel As Integer)
If Me.RecordsetClone.RecordCount = 0 Then
MsgBox "There are no eBud (Reserved) accounts" & vbNewLine & _
"assocated with the current register."
DoCmd.Close acForm, Me.Name
End If
End Sub