Strictly speaking, this is a Calculated Field, and as such should not really be Bound to a Field in the underlying Table. If the TargetField is Bound, the above code will do. If it is Unbound, you will need to place the same code in the Form_Current event, as well.
Private Sub SerialNumberTextBox_AfterUpdate()
If Nz(Me.SerialNumberTextBox, "") <> "" Then
Me.TargetTextBox = 1
Me.TargetTextBox = Null
Hope this helps!
The problem with making anything foolproof...is that fools are so darn ingenious!
All posts/responses based on Access 2003/2007