looping when checking isdate

A

april27

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!
 
T

Tom Ogilvy

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
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Top