You didn't follow Bob's instructions!
code in the Forms BeforeUpdate event
You put your code in the Control's BeforeUpdate event; not the same thing!
Private Sub HOIDNumber_BeforeUpdate(Cancel As Integer)
needs to be
Private Sub Form_BeforeUpdate(Cancel As Integer)
Validation to see if a field is populated cannot be done in the Control's event for the very reason you gave...the user can simply 'skip' entry in the pertinent Control to foil the validation!
Linq ;0)>
The problem with making anything foolproof...is that fools are so darn ingenious!
All posts/responses based on Access 2003/2007