VBA验证文本框中是否存在文本,然后检查日期是否格式正确

时间:2012-08-08 11:21:40

标签: forms excel vba date textbox

我有一个与VBA结合创建的excel表单。在表单中,我有一个文本框,用户在其中键入日期。

我创建了这个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个时,我遇到的问题是用户需要为其他四个文本框输入日期按顺序提交表格。

所以我的问题: 什么VBA代码可用于首先确定文本框中是否存在文本,然后第二以确定日期是否格式正确。

我正在尝试类似的事情:

 If textboxDate1.ListIndex = -1 Then

但我无法使用IsDate子句。

非常感谢提前。

1 个答案:

答案 0 :(得分: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