DateDiff

This function determines the number of intervals between two dates.

Syntax

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

Parameters

interval
Required. String expression that is the interval you want to use to calculate the differences between date1 and date2. The following table shows the possible values for the interval parameter.
Setting
Description
yyyy Year
q Quarter
m Month
y Day of year
d Day
w Weekday
ww Week of year
h Hour
m Minute
s Second

date1, date2
Required. Date expressions. Two dates you want to use in the calculation.
firstdayofweek
Optional. Constant that specifies the day of the week. If not specified, Sunday is assumed. The following table shows the possible values for the firstdayofweek parameter.
Constant
Value
Description
vbUseSystem 0 Use National Language Support (NLS) API setting
vbSunday 1 Sunday (default)
vbMonday 2 Monday
vbTuesday 3 Tuesday
vbWednesday 4 Wednesday
vbThursday 5 Thursday
vbFriday 6 Friday
vbSaturday 7 Saturday

firstweekofyear
Optional. Constant that specifies the first week of the year. If not specified, the first week is assumed to be the week in which January 1 occurs. The following table shows the possible values for the firstweekofyear parameter.
Constant
Value
Description
vbUseSystem 0 Use National Language Support (NLS) API setting.
vbFirstJan1 1 Start with the week in which January 1 occurs (default).
vbFirstFourDays 2 Start with the week that has at least four days in the new year.
vbFirstFullWeek 3 Start with the first full week of the new year.

Return Values

Returns the number of intervals between two dates.

Remarks

Use DateDiff to determine how many specified time intervals exist between two dates. For example, you can use DateDiff to calculate the number of days between two dates or the number of weeks between today and the end of the year.

To calculate the number of days between date1 and date2, use either day of year (y) or day (d). When interval is weekday (w), DateDiff returns the number of weeks between the two dates. If date1 falls on a Monday, DateDiff counts the number of Mondays until date2. It counts date2 but not date1. However, if interval is week (ww), DateDiff returns the number of calendar weeks between the two dates. It counts the number of Sundays between date1 and date2. DateDiff counts date2 if it falls on a Sunday; but it does not count date1, even if it falls on a Sunday.

If date1 refers to a later point in time than date2, DateDiff returns a negative number.

The firstdayofweek parameter affects calculations that use the w and ww interval symbols.

If date1 or date2 is a date literal, the specified year becomes a permanent part of that date. However, if date1 or date2 is enclosed in quotation marks ("") and you omit the year, the current year is inserted in your code each time the date1 or date2 expression is evaluated. This makes it possible to write code that can be used in different years.

When comparing December 31 to January 1 of the succeeding year, DateDiff for Year (yyyy) returns 1 even though only a day has elapsed.