2012-08-08 64 views
4

我有我的组合创造了VBA的Excel表格。在表单中我有一个用户输入日期的文本框。VBA以验证是否在一个文本框存在文本,然后检查日期是正确的格式

我创造了这个VBA条款,以确保在支持格式XX/XX/XXXX日期的用户类型。

If Not IsDate(textboxDate1.Text) Then 
    Call MsgBox("Please select a correct Date format", vbOKOnly) 
    Exit Sub 
End If 

然而,与此VBA代码,要求用户输入一个日期,用户是否需要与否。所以,当我有一个4个其它文本框输入我的形式的日期,用户只需要在1日进入,而不是5,我在哪里放于日期为其他四个textboxs要求用户问题以便提交表格。

所以我的问题:什么 VBA代码是提供给第一确定在文本中是否存在文本,然后第二来确定日期是否是正确的格式或没有。

我试图与此类似:

If textboxDate1.ListIndex = -1 Then 

,但我无法得到它与从句则IsDate工作。

非常感谢提前。

回答

4
If (Len(Trim(textboxDate1.Text)) <> 0) And Not IsDate(textboxDate1.Text) Then 
    Call MsgBox("Please select a correct Date format", vbOKOnly) 
    Exit Sub 
End If 
+0

完美的作品 – 2012-08-08 11:31:32

+1

+ 1 :)不过建议。您可能需要使用'LEN(TRIM(textboxDate1.Text))<> 0',而不是'textboxDate1.Text <> “”' – 2012-08-08 12:06:46

+0

@SiddharthRout完成! – rene 2012-08-08 12:14:22