Name
Year Function
Class
Microsoft.VisualBasic.DateAndTime
Syntax
Year(datevalue
)
-
datevalue
Use: Required
Data Type: Date or valid date expression
Any valid date expression
Return Value
Integer
Description
Returns an integer representing the year in a given date expression
Rules at a Glance
If
datevalue
containsNothing
,Year
returns1
. (This assumes thatOption
Strict
is off.) For example:Dim oDat As Object Console.Writeline(Year(sDat)) ' Displays 1
If
datevalue
is a date literal (a date delimited with the#
symbol), the year must contain four digits.
Programming Tips and Gotchas
The validity of the date expression—and the position of the year element within the given date expression—is initially determined by the locale settings of the Windows system. However, some extra intelligence relating to two-digit year values (see the next item in this list) has been built into the
Year
function, which surpasses the usual comparison of a date expression to the current locale settings.What happens when you pass a date over to the
Year
function containing a two-digit year? Quite simply, when theYear
function sees a two-digit year, it assumes that all values equal to or greater than 30 are in the 20th century (i.e., 30 = 1930, 98 = 1998) and that all values less than 30 are in the 21st century (i.e., 29 = 2029, 5 = 2005). Of course, it is much better programming practice to use—and require your clients to use—four-digit years.
See Also
Get VB .NET Language in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.