The change event will fire after typing even just one character and upon each subsequent typed or deleted character, so that might cause unexpected behaviour. Unless you know of a way to prevent typing in the control while still allowing the use of the calendar, it doesn't sound suitable here. As June7 says, the after update wont' fire until focus moves off of the control. Try the textbox.dirty event (and maybe test for a valid date versus garbage text). I'm assuming your control is bound to a date field:
Code:
If IsDate(Me.Text1) Then
Me.Command1.Visible = False
End If