Returns a Variant (Integer) containing a whole number representing the year.


Year( date )

The required dateargument is any Variant, numeric expression, string expression, or any combination of these that can represent a date. If date contains Null, Null is returned.

Note: If the Calendar property setting is Gregorian, the returned integer represents the Gregorian year for the date argument. If the calendar is Hijri, the returned integer represents the Hijri year for the date argument. For Hijri dates, the argument number is any numeric expression that can represent a date and/or time from 1/1/100 (Gregorian Aug 2, 718) through 4/3/9666 (Gregorian Dec 31, 9999).

Query examples



SELECT DateofSale, Year([DateofSale]) AS Expr1 FROM ProductSales;

Returns the values from the field "DateofSale" and number representing the 'Year' of these date values.

SELECT Year(#10/10/2018#) AS YearTest FROM ProductSales;

Returns the number representing the 'Year' of the string "10/10/2018". Result: 2018.

VBA example

Note: Examples that follow demonstrate the use of this function in a Visual Basic for Applications (VBA) module. For more information about working with VBA, select Developer Reference in the drop-down list next to Search and enter one or more terms in the search box.

This example uses the Year function to obtain the year from a specified date. In the development environment, the date literal is displayed in short date format using the locale settings of your code.

Dim MyDate, MyYear
MyDate = #February 12, 1969# ' Assign a date.
MyYear = Year(MyDate) ' MyYear contains 1969.

Choose the right date function

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Office Insiders

Was this information helpful?

What affected your experience?

Thank you for your feedback!