很抱歉这个问题的基础。只是想在这里学习VBA。
我有以下代码
On Error GoTo ErrorHandler
YourDoB = InputBox("Enter your date of birth")
ErrorHandler: ' Error-handling routine.
Select Case Err.Number ' Evaluate error number.
Case 13 ' Wrong type'
MsgBox ("That is not a date!")
End Select
我要这样做,以便如果此人介绍了无效的出生日期,则在错误消息之后,再次出现输入框,要求DOB,直到给出正确的答案为止。知道如何最好地做到这一点吗?
答案 0 :(得分:1)
也许是这样,使用IsDate
来验证输入。
Sub Test()
Dim rawInput As Variant, yourDOB As Date
Do
rawInput = InputBox("Enter your date of birth")
If Not IsDate(rawInput) Then
MsgBox "That is not a date!"
Else
yourDOB = CDate(rawInput)
End If
Loop While Not IsDate(rawInput)
End Sub