MS Access: DateDiff Function
In Microsoft Access, the DateDiff function returns the difference between two date values, based on the interval specified.
Syntax
The syntax for the DateDiff function is:
DateDiff ( interval, date1, date2, [firstdayofweek], [firstweekofyear])
interval is the interval of time to use to calculate the difference between date1 and date2. Below is a list of valid interval values.
Interval | Explanation |
yyyy | Year |
q | Quarter |
m | Month |
y | Day of year |
d | Day |
w | Weekday |
ww | Week |
h | Hour |
n | Minute |
s | Second |
date1 and date2 are the two dates to calculate the difference between.
firstdayofweek is optional. It is a constant that specifies the first day of the week. If this parameter is omitted, Access assumes that Sunday is the first day of the week. This parameter can be one of the following values:
Constant | Value | Explanation |
vbUseSystem | 0 | Use the 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 is optional. It is a constant that specifies the first week of the year. If this parameter is omitted, Access assumes that the week containing Jan 1st is the first week of the year. This parameter can be one of the following values:
Constant | Value | Explanation |
vbUseSystem | 0 | Use the NSL API setting |
vbFirstJan1 | 1 | Use the first week that includes Jan 1st (default) |
vbFirstFourDays | 2 | Use the first week in the year that has at least 4 days |
vbFirstFullWeek | 3 | Use the first full week of the year |
Applies To
- Access 2013, Access 2010, Access 2007, Access 2003, Access XP, Access 2000
For Example
DateDiff ("yyyy", #15/10/1998#, #22/11/2003#) | would return 5 |
DateDiff ("m", #15/10/2003#, #22/11/2003#) | would return 1 |
DateDiff ("d", #15/10/2003#, #22/11/2003#) | would return 38 |
VBA Code
The DateDiff function can be used in VBA code. For example:
Dim LValue As Integer
LValue = DateDiff ("d", #15/10/2003#, #22/11/2003#)
In this example, the variable called LValue would now contain the value of 38.
SQL/Queries
You can also use the DateDiff function in a query.