【问题标题】:How to calculate elapsed time in seconds in VBA?如何在 VBA 中计算以秒为单位的经过时间?
【发布时间】:2012-03-12 05:50:22
【问题描述】:

我有 2 个字符串,strStartTime 和 strEndTime。

strStartTime = "12:32:54" strEndTime = "12:33:05"

我想知道 strStartTime 和 strEndTime 之间经过了多少秒,所以我这样做了:

Dim dtDuration as date
dtDuration = DateDiff("s", CDate(strStartTime), CDate(strEndTime))  

我得到的结果是本地人监视窗口中的 dtDuration = "#1/10/1900#"。

为什么会这样?在开始时间和结束时间之间经过的 11 秒内,如何使 dtDuration 等于 11?

【问题讨论】:

    标签: vba datediff


    【解决方案1】:

    只需将变量类型更改为 Long:

    Dim dtDuration as Long
    

    VBA 将 DateDiff 函数的数值结果转换为日期类型的变量。

    【讨论】:

      猜你喜欢
      • 2012-11-15
      • 2010-11-30
      • 1970-01-01
      • 2010-12-24
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多