【问题标题】:Date function in VBAVBA中的日期函数
【发布时间】:2017-11-09 09:40:21
【问题描述】:

有一个工作表函数日期是这样工作的:

Date(2016;03;01) => 01.03.2016

但是,我在 vba 中找不到此功能。 Application.WorksheetFunction.Date 不存在。而简单的Date() 只能在没有参数的情况下使用来获取今天的日期。

在哪里可以找到以年、月和日为参数的工作表函数 Date 的确切版本?

编辑:不需要当前日期。我需要该函数与参数一起使用。

【问题讨论】:

标签: vba excel


【解决方案1】:

CDate可以将String转换为Date,支持多种输入格式。不过我建议先检查IsDate 的字符串。

DateSerial 可以通过将年、月、日作为整数来生成日期。

在您的示例中使用DateSerial

Dim myDate As Date

myDate = DateSerial(2016, 3, 1)

【讨论】:

    【解决方案2】:

    CDate 是最接近的类似物,但不保证解析和区域设置规则与工作表函数相同。

    如果您想要当前日期,请使用Fix(Now),或不带括号的Date

    虽然我个人将自己限制为 DateSerial,但它需要一年、一个月和一天作为数字输入。

    【讨论】:

    • CDate 将字符串作为参数,对吧?难道没有一个函数以年、月、日为参数吗?
    • @Ans,是的,它确实需要一个字符串。我已将 Dateserial 函数添加到我的答案中。
    猜你喜欢
    • 2020-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-15
    • 2016-11-09
    • 1970-01-01
    • 1970-01-01
    • 2012-01-09
    相关资源
    最近更新 更多