Return a specified part of a given date.
Syntax
DatePart (interval,date [, FirstDayofWeek [, FirstWeekofYear]])
Key
date The date to analyse
FirstDayofWeek A constant defining the first day of the week:
vbUseSystem (0), vbSunday (1=default),vbMonday(2),
vbTuesday(3), vbWednesday(4), vbThursday(5),
vbFriday(6), vbSaturday(7)
FirstWeekofYear A constant defining the first week of the year:
vbUseSystem(0), vbFirstJan1(1),vbFirstFourDays(2),
vbFirstFullWeek(3)
interval The date/Time interval to express in the result:
yyyy Year
q Quarter
m Month
y Day of year
d Day
w Weekday
h Hour
n Minute
s Second
Example
dtm1="18-Feb-10"
WScript.Echo dtm1
intMonthsinDate=DatePart("m", dtm1)
WScript.Echo intMonthsinDate
To produce a correct ISO weeknumber requires a function:
Function ISOWeekNum(dtmDate)
' Returns a WeekNumber from a date
Dim NearThurs
NearThurs = ((dtmDate+5) \ 7) * 7 - 2
ISOWeekNum = ((NearThurs - DateSerial(Year(NearThurs), 1, 1)) \ 7) + 1
End function
' Example
wscript.echo "ISOWeekNumber: " & ISOWeekNum(cdate("2017-12-25"))
“Christmas, children, is not a date. It is a state of mind” ~ Mary Ellen Chase
Related:
Date - The current system date.
Day - Return the day component of a date.
DateAdd - Add a time interval to a Date.
DateDiff - Return the time interval between two dates.
DateSerial - Return a Date from a numeric Year, Month and Day.
Month - Return the month component of a date.
Year - Return the year component of a date.
Q200299 - Format or DatePart Functions return wrong Week number for last Monday in year.
Standard date and time notation - YYYY-MM-DD
Equivalent PowerShell cmdlet: Get-Date