WORKDAY.INTL

WORKDAY.INTL(start_date, days [,weekend] [,holidays])

Returns the date serial number that is a given number of working days before or after a date.

start_dateThe starting date.
daysThe number of workdays before or after the start date.
weekend(Optional) The number indicating which days to consider weekends:
1 = Saturday and Sunday (default)
2 = Sunday and Monday
3 = Monday and Tuesday
4 = Tuesday and Wednesday
5 = Wednesday and Thursday
6 = Thursday and Friday
7 = Friday and Saturday
11 = Sunday only
12 = Monday only
13 = Tuesday only
14 = Wednesday only
15 = Thursday only
16 = Friday only
17 = Saturday only
String Representation (eg 0000011)
holidays(Optional) A array of dates to exclude from the working calendar, holidays and floating days.

REMARKS
* This function replaces the WORKDAY function.
* This function can be used to calculate the end date (given a start date and total days).
* Weekends will default to being Saturday and Sunday but this can be changed.
* If "start_date" is not an integer, it is truncated.
* If "start_date" is not a valid date, then #VALUE! is returned.
* If "start_date" plus "days" is not a valid date, then #VALUE! is returned.
* If "start_date" is out of range, then #NUM! is returned.
* If "days" is not an integer, it is truncated.
* If "days" > 0, then a future date is returned.
* If "days" < 0, then an earlier date is returned.
* If "days" = 0, then "start_date" is returned.
* The "weekend" can also use a string representation for your weekend. The string must be 7 characters and only contain characters 1 and 0. Example 13.
* If "weekend" is not a 7 digit string, then #VALUE! is returned
* If "weekend" is left blank, then 1 is used.
* The "holidays" can be either a range of cells that contain the dates or an array constant of the serial numbers that represent the dates.
* If "holidays" is left blank, then only weekends will be excluded.
* If "holidays" has more than one date, you can either use an array constant or refer to a cell range.
* If "holidays" contains an invalid date, then #VALUE! is returned.
* You can use the DATE function to return the date as a date serial number given a year, month, day.
* You can use the DATEVALUE function to return the date serial number given a date in text format.
* You can use the DAYS function to return the number of days between two dates.
* You can use the DAYS360 function to return the number of days between two dates, based on 30 day months.
* You can use the NETWORKDAYS function to return the number of working days between two dates excluding weekends and holidays.
* You can use the NETWORKDAYS.INTL function to return the number of working days between two dates excluding weekends and holidays.
* You can use the WEEKDAY function to return the day of the week for a given date.
* You can use the WORKDAY6 - User Defined Function function to assume a 6-day working week.
* You can use the WORKDAYSMISC - User Defined Function function to use other days as your workdays.
* This function was added in Excel 2010 to replace the WORKDAY function.
* For the Microsoft documentation refer to support.microsoft.com
* For the Google documentation refer to support.google.com

 AB
1=WORKDAY.INTL("1 Jan 2022", 0) = 44562Sat, 1 Jan 2022
2=WORKDAY.INTL("1 Jan 2022", 1) = 44564Sun, 2 Jan
3=WORKDAY.INTL("1 Jan 2022", 1, 2) = 44565Mon, 3 Jan
4=WORKDAY.INTL("1 Jan 2022", 5) = 44568Tue, 4 Jan
5=WORKDAY.INTL("1 Jan 2022", 6) = 44571Wed, 5 Jan
6=WORKDAY.INTL("1 Jan 2022", 6, 3) = 44570Thu, 6 Jan
7=WORKDAY.INTL("2 Jan 2022", 2, 1, "3 Jan 2022") = 44566Fri, 7 Jan
8=WORKDAY.INTL("2 Jan 2022", 2, 1, "4 Jan 2022") = 44566Sat, 8 Jan
9=WORKDAY.INTL("2 Jan 2022", 2, 1, {"3 Jan 2022", "4 Jan 2022"}) = 44567Sun, 9 Jan
10=WORKDAY.INTL("10 Jan 2022", -5) = 44564Mon, 10 Jan
11=WORKDAY.INTL( DATE(2022, 1, 1), 1) = 44564 
12=WORKDAY.INTL( DATEVALUE("01/01/2022"), 1) = 44564 
13=WORKDAY.INTL("1 Jan 2022", 1, "1111101") = 44569 
14=WORKDAY.INTL("1 Jan 2022", 1, { 1, 2 }) = { 44564 , 44565 } 
15=WORKDAY.INTL(1/1/1977, 1) = 2 
16=WORKDAY.INTL("2 Jan 2024", "text") = #VALUE! 
17=WORKDAY.INTL("2 Jan 2024", #REF!) = #REF! 
18=WORKDAY.INTL("01/02/2024", -10000000) = #NUM! 
19=WORKDAY.INTL("30/02/2024", 2) = #VALUE! 

1 - What is the serial number for the date that is 0 days after 1 Jan 2022 (44562 + 0).
2 - What is the serial number for 1 day after 1 Jan 2022. The 1 Jan is Saturday, so the next working day would be Monday which is 2 days after. (44562 + 2)
3 - What is the serial number for 1 day after 1 Jan 2022 assuming the weekends are Sunday and Monday. The 1 Jan is Saturday, so the next working day would be Tuesday which is 3 days after. (44562 + 3)
4 - What is the serial number for 5 days after 1 Jan 2022. The 1 Jan is Saturday, so 5 working days after would be Friday which is 6 days after. (44562 + 6)
5 - What is the serial number for 6 days after 1 Jan 2022. The 1 Jan is Saturday, so 6 working days after would be the following Monday which is 9 days after. (44562 + 9)
6 - What is the serial number for 6 days after 1 Jan 2022 assuming the weekends are Monday and Tuesday. The 1 Jan is Saturday, so 6 working days after would be the following Sunday which is 8 days after. (44562 + 8)
7 - What is the serial number for 2 days after 2 Jan 2022. The 2 Jan is Sunday, so 2 working days after would be Tuesday but since the 3 Jan is considered to be a holiday it will actually be Wednesday which is 4 days after. (44562 + 4)
8 - What is the serial number for 2 days after 2 Jan 2022. The 2 Jan is Sunday, so 2 working days after would be Tuesday but since the 4 Jan is considered to be a holiday it will actually be Wednesday which is 4 days after. (44562 + 4)
9 - What is the serial number for 2 days after 2 Jan 2022. The 2 Jan is Sunday, so 2 working days after would be Tuesday but since both the 3 Jan and 4 Jan are considered to be a holidays it will actually be Thursday which is 5 days after. (44562 + 5)
10 - What is the serial number for 5 days before 10 Jan 2022. The 10 Jan is Monday, so 5 working days before would be Monday, which is 7 days before (44571 - 7)
11 - This is the same as Example 2 using the DATE function.
12 - This is the same as Example 2 using the DATEVALUE function.
13 - What is the serial number for 1 day after 1 Jan 2022. The only working day is Saturday, so 1 working day after would be Saturday the following week. (44562 + 7)
14 - What is the serial number for 1 day after 1 Jan 2022 for two different weekend options { 1 , 2 }. This returns an array.
15 - This is not a valid date and is just a very small value.
16 - The days argument is not numeric.
17 - The days argument is #REF!.
18 - The date returned is not valid.
19 - The start_date argument is not a valid date.

© 2025 Better Solutions Limited. All Rights Reserved. © 2025 Better Solutions Limited Top