Option Explicit
Private Sub txtStartTime_Exit(ByVal Cancel As MSForms.ReturnBoolean)
txtStartTime.Text = Format(txtStartTime.Text, "H:MM AM/PM")
End Sub
Private Sub UserForm_Initialize()
txtStartTime.Text = Format(Now, "H:MM AM/PM")
End Sub
"John Pierce" wrote:
> I have a form that has two text boxes that are initiated as follows::
>
> Dim Tm As Date
> Tm =
> Evaluate("=IF(MINUTE(TIME(HOUR(Now()),MINUTE(Now()),0))-MINUTE(TIME(HOUR(Now()),FLOOR(MINUTE(Now()),15),0))<8,TIME(HOUR(Now()),FLOOR(MINUTE(Now()),15),0),TIME(HOUR(Now()),CEILING(MINUTE(Now()),15),0))")
>
> txtStartDate.Text = Format(Date, "mm/dd/yy")
> txtStartTime.Text = Format(Tm, "h:mm AM/PM")
>
> If I tab into the StartDate text box and type "1/22" (without the
> quotes, of course) and then tab to the next field, the following
> procedure runs:
>
> Private Sub txtStartDate_exit(ByVal cancel As MSForms.ReturnBoolean)
> txtStartDate.Value = Format(txtStartDate, "mm/dd/yy")
> End Sub
>
> and the text in the StartDate box changes to "01/22/06".
>
> But if I type "8 a" in the StartTime box and then tab out of it, it
> doesn't reformat even though there is a similar procedure for it
>
> Private Sub txtStartTime_exit(ByVal cancel As MSForms.ReturnBoolean)
> txtStartTime.Text = Format(txtStartTime, "h:mm AM/PM")
> End Sub
>
> When all data is entered in the form and other procedures are run, the
> "8 a" is read and calculated correctly so there is no functional
> problem. I would just like it to reformat it's appearance to reassure
> users that they have entered what they intended. Does anyone know how
> to fix this?
>
>
Bookmarks