VBA验证文本框中是不是存在文本,然后检查日期是不是格式正确
Posted
技术标签:
【中文标题】VBA验证文本框中是不是存在文本,然后检查日期是不是格式正确【英文标题】:VBA to verify if text exists in a textbox, then check if date is in the correct formatVBA验证文本框中是否存在文本,然后检查日期是否格式正确 【发布时间】:2012-08-05 11:58:26 【问题描述】:我有一个结合 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】: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
【讨论】:
+ 1 :) 但是一个建议。您可能想使用Len(Trim(textboxDate1.Text)) <> 0
而不是textboxDate1.Text <> ""
+1 但是,您可以通过首先检查长度来优化它。如果Len = 0
没有必要检查IsDate
。以上是关于VBA验证文本框中是不是存在文本,然后检查日期是不是格式正确的主要内容,如果未能解决你的问题,请参考以下文章
python - pandas - 检查数据框中是不是存在日期
如何从文本框(windows窗体)检查主键是不是存在于我的数据库中,c#