Visual Basic 6:检查日期是否在将来

时间:2013-02-13 09:05:46

标签: forms validation date vb6 future

我有一个用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

也总是如此

我该怎么做才能解决这个问题?我怎么知道输入的日期是否在将来?

谢谢!

1 个答案:

答案 0 :(得分:1)

使用CDate将文本框的内容转换为日期。

如果它有引号围绕它就不能强调这一点,它是一个字符串。