The Excel Weekday function returns an integer representing the day of the week for a supplied date.
Syntax: WEEKDAY( serial_number, [return_type] )
|serial_number||–||The Excel date, that you want to return the weekday of.|
|[return_type]||–||An optional integer argument, that specifies which integers are to be assigned to each weekday. Possible values are:
If omitted, the [return_type] argument is set to the default value 1 (i.e. Sunday = 1, Monday = 2, … , Saturday = 7).
Only options 1, 2 & 3 above are available in Excel 2007 and earlier.
Note that Microsoft advises that you do not type dates directly into functions, as Excel may interpret text representations of dates differently, depending on the date interpretation settings on your computer. Therefore the serial_num argument for the Weekday function should be input as either a reference to a cell containing a date or a date returned from another function or formula
Weekday Function Examples
Column A of the spreadsheet below stores the dates of a series of events. The Weekday function has been inserted into the cells of column B, to show the weekday of each date in column A.
|The Weekday function data can now be used in an Excel Pivot Table, to show the number of events occurring on each weekday. A pivot table made from the sample of data above is shown on the right.
The pivot table enables you to clearly see that the peak weekday for the events was Tuesday (represented by day number 3), which accounts for a total of 18 events.
Displaying Weekdays as Text
If you use the Weekday function with the [return_type] argument set to 1, then you can use Excel formatting to display the weekday names instead of showing numbers. To format the weekday to show the weekday name:
Note, this only works with the [return_type] set to 1.
The resulting pivot table is shown on the right.
Weekday Function Errors
If you get an error from the Excel Weekday function, this is likely to be one of the following:
#VALUE! – Occurs if the supplied serial_num or the supplied [return_type] cannot be recognized as a numeric value.
#NUM! – Occurs if either the supplied serial_num argument is numeric but is out of range for the current date base or the supplied [return_type] argument is not one of the permitted values (1-3 or 11-17)