>This works great - so long as the datatype in the Controlsource is not a Date
>type.
The only thing I can think of is to unbind the textbox on GotFocus, and re-bind it on LostFocus.
IOW, save the txt.ControlSource to txt.oControlSource, and txt.Value = DTOC(EVAL(txt.oControlSource)). On the way out, after you verify the date value, reset the txt.ControlSource and set the txt.Value = ldMyNewDateValue.
Caveat: untested....