我有一个用VB6制作的表格,我需要检查日期字段以便将来的日期。
如果输入的日期是将来显示的错误消息,如果不是,则验证应该完成。
我做完了:
Private Sub txtDate_Validate(Index As Integer, Cancel As Boolean)
If Not IsDate(txtDate(9).Text) Then 'first I check if the data entered is a date
'error message saying the field needs a valid date
Cancel = True
Else
If (txtDate(9).Text > Date) Then 'now I check if the date entered is bigger than today’s date
'error message saying the date is in the future
Cancel = True
Else
Exit Sub
End If
End If
End If
End Sub
此代码不起作用,因为
txtDate(9).Text > Date
永远是真的
即使我这样做:
Format(txtDate(9).Text, "dd/mm/yyyy") > Date
也总是如此
我该怎么做才能解决这个问题?我怎么知道输入的日期是否在将来?
谢谢!
答案 0 :(得分:1)
使用CDate将文本框的内容转换为日期。
如果它有引号围绕它就不能强调这一点,它是一个字符串。