【问题标题】:Comparing Dates With User Input将日期与用户输入进行比较
【发布时间】:2013-04-26 01:58:00
【问题描述】:

我找到了一个比较两个日期的语句,看看一个是否大于另一个:

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。我不知道如何在用户输入中使用封闭的 # 符号。

提前感谢您的帮助。

【问题讨论】:

    标签: date vb6 compare user-input


    【解决方案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
    

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

    【讨论】:

    • 做到了。非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-16
    • 2019-08-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多