比较日期与用户输入

时间:2013-04-26 01:58:00

标签: date vb6 compare user-input

我找到了一个声明,比较两个日期以查看一个日期是否大于另一个:

If Format(Date, "m/d/yyyy") > #1/1/2000# Then MsgBox "Okay"

基本上说,如果今天晚于2000年1月1日,则会弹出一个消息框。

如果我将日期放在代码中(即,1/1/2000),这很好,但我想在运行时从用户那里得到一个日期,但是无法弄清楚如何合并在上面的陈述中。

如果我提供一个TextBox供用户输入日期,我用#符号包围了文本:

If MyDate > "#" & Text1.Text & "#" then

这不起作用。我已经尝试将文本转换为Double,Integer和Long。我不知道如何使用带有用户输入的封闭#符号。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

使用CDate(Text1.Text)将字符串转换为日期。实际上,您需要进行一些检查以确保输入的值是有效日期,类似于:

Dim myDate As Date
If IsDate(Text1.Text) Then
    MyDate = CDate(Text1.Text)
Else
    'Indicate the error to the user
End If

#个字符是“日期引号”,如果愿意的话 - 它们与日期文字的用途相同,而"用于分隔字符串文字。您不能只将#连接到一个值以使其成为日期。