Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
looping when checking isdate
I use a user form with text box that the user shall write a date in. after
pressing abutton the info in the textbox shall be investigated in order to see that it is a date. if not then display messagebox if otherwise go back to user form so that the user can insert new info. i just do not get how to do the loop. how do you "go back" in the loop? vb just complains that it is private? my code is: Private Sub callMainProgramButton_Click() strStartDatum = TextBox1.Text Call checkDate Call mainProgram Unload Me End Sub Private Sub checkDate() Worksheets("Setup").Range("a15") = strStartDatum If (Not (IsDate(strStartDatum))) Then MsgBox "Wrong format" Cancel = True End If End Sub As you can see the upper sub calls the lower sub in which isDate is checked. however when the sub checkDate() has done one loop i want it to retun "somewhere" and get new info from the text field. help!!! please! |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
looping when checking isdate
why not just use the exit event of the Textbox
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean) if not isdate(me.Textbox1.Text) then msgbox "Invalid date, try again" & vbNewLine & _ "Use a format like 08/21/2006" me.Textbox1.Text = "" Cancel = True end if End Sub -- Regards, Tom Ogilvy It would be less confusing to the user if the entry is validated right away. -- Regards, Tom Ogilvy "april27" wrote: I use a user form with text box that the user shall write a date in. after pressing abutton the info in the textbox shall be investigated in order to see that it is a date. if not then display messagebox if otherwise go back to user form so that the user can insert new info. i just do not get how to do the loop. how do you "go back" in the loop? vb just complains that it is private? my code is: Private Sub callMainProgramButton_Click() strStartDatum = TextBox1.Text Call checkDate Call mainProgram Unload Me End Sub Private Sub checkDate() Worksheets("Setup").Range("a15") = strStartDatum If (Not (IsDate(strStartDatum))) Then MsgBox "Wrong format" Cancel = True End If End Sub As you can see the upper sub calls the lower sub in which isDate is checked. however when the sub checkDate() has done one loop i want it to retun "somewhere" and get new info from the text field. help!!! please! |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Macro for Looping for Criteria Checking | Excel Discussion (Misc queries) | |||
IsDate? | Excel Worksheet Functions | |||
IsDate | Excel Programming | |||
VBA function , IsDate() not available | Excel Programming | |||
IsDate Function | Excel Programming |