0

我发现了一个比较两个日期的语句,以查看一个日期是否大于另一个日期:

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

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

如果我将日期放入代码中(即 2000 年 1 月 1 日),这很好,但我想在运行时从用户那里获得一个日期,但不知道如何将其合并到语句中以上。

如果我提供一个文本框供用户输入日期,我会用 # 符号将文本括起来:

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

那是行不通的。我尝试将文本转换为 Double、Integer 和 Long。我不知道如何在用户输入中使用封闭的 # 符号。

在此先感谢您的帮助。

4

1 回答 1

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

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

于 2013-04-26T02:49:21.817 回答