位置:首頁 > 高級語言 > VBA教學 > VBA DateDiff函數

VBA DateDiff函數

DateDiff

一個函數,返回兩個指定的時間間隔之間的差。

語法

DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]]) 

參數說明

  • Interval, 必需的參數。它可以采用以下值:

    • d - 一年中的天

    • m - 一年中的月份

    • y - 當年

    • yyyy - 年

    • w - 工作周

    • ww - 周

    • q - 季度

    • h - 小時

    • m - 分鐘

    • s - 秒

  • date1 和 date2 是必需的參數

  • firstdayofweek 是可選的。指定一周的第一天。它可以使用以下值:

    • 0 = vbUseSystemDayOfWeek - 使用國家語言支持(NLS)API設置

    • 1 = vbSunday - 周日

    • 2 = vbMonday - 周一

    • 3 = vbTuesday - 周二

    • 4 = vbWednesday - 周三

    • 5 = vbThursday - 周四

    • 6 = vbFriday - 周五

    • 7 = vbSaturday - 周六

  • firstdayofyear 是可選的。指定一年的第一天。它可以使用以下值:

    • 0 = vbUseSystem - 使用國家語言支持(NLS)API設置

    • 1 = vbFirstJan1 - 開始在1月1日發生的周(默認)

    • 2 = vbFirstFourDays - 開始在新的一年中至少有四天的一周

    • 3 = vbFirstFullWeek - 開始在新的一年的第一個完整周

示例

添加一個按鈕,並添加以下功能

Private Sub Constant_demo_Click()
  Dim fromDate as Variant
  fromDate="01-Jan-09 00:00:00"
  Dim toDate as Variant
  toDate="01-Jan-10 23:59:00"
  msgbox("Line 1 : " &DateDiff("yyyy",fromDate,toDate))
  msgbox("Line 2 : " &DateDiff("q",fromDate,toDate))
  msgbox("Line 3 : " &DateDiff("m",fromDate,toDate))
  msgbox("Line 4 : " &DateDiff("y",fromDate,toDate))
  msgbox("Line 5 : " &DateDiff("d",fromDate,toDate))
  msgbox("Line 6 : " &DateDiff("w",fromDate,toDate))
  msgbox("Line 7 : " &DateDiff("ww",fromDate,toDate))
  msgbox("Line 8 : " &DateDiff("h",fromDate,toDate))
  msgbox("Line 9 : " &DateDiff("n",fromDate,toDate))
  msgbox("Line 10 : "&DateDiff("s",fromDate,toDate))
End Sub

當執行函數的輸出如下所示:

Line 1 : 1
Line 2 : 4
Line 3 : 12
Line 4 : 365
Line 5 : 365
Line 6 : 52
Line 7 : 52
Line 8 : 8783
Line 9 : 527039
Line 10 : 31622340