ExcelReady
CourseMock testsFunction guidesBlog
Start freeStart learning for free
ExcelReady

Be Excel-ready before day one. Hands-on practice in your browser, with instant feedback.

Learn

  • Course
  • Mock tests
  • Function guides
  • Blog

Test prep

  • Excel test practice
  • Free screening quiz
  • Certificate

Company

  • Editorial policy
  • Contact
  • Terms
  • Privacy

© 2026 ExcelReady. All rights reserved.

Function guides / WORKDAY

The WORKDAY function in Excel

WORKDAY returns the date that is a given number of working days before or after a start date. It skips Saturdays and Sundays, and any holidays you list. Use it for delivery dates, SLA deadlines and "reply within 5 business days" rules.

Syntax

=WORKDAY(start_date, days, [holidays])
start_dateThe date to count from. It isn't counted itself.
daysHow many working days to move. Use a negative number to count backwards.
holidaysOptional. A range of dates to skip as well, like $E$2:$E$4.

Try it yourself

This is a live spreadsheet. Type the formula and press Enter.

In D2, use WORKDAY to find the delivery date: C2 working days after the order date in B2, skipping weekends and the holidays in F2:F4.

fx
ABCDEFG
1
Order
Order date
Lead time (days)
Delivery date
Holidays
2
PO-6101
12/22/2025
4
12/25/2025
3
PO-6102
12/23/2025
2
12/26/2025
4
PO-6103
12/29/2025
5
1/1/2026
5
PO-6104
1/5/2026
3
6
7
8

Tip: Start date first, then the number of working days. The holiday range goes last.

Examples

=WORKDAY(B2,C2)→ 46017

Counts 5 working days after Friday Dec 19, skipping the weekend, which lands on Friday Dec 26. The result is a date serial number, so format the cell as a Date in Excel.

=TEXT(WORKDAY(B2,C2,E2:E4),"ddd, mmm d, yyyy")→ "Tue, Dec 30, 2025"

The same order with the holiday list added. Dec 25 and 26 are skipped too, so delivery moves to Tuesday Dec 30.

=TEXT(WORKDAY(EOMONTH(B4,0)+1,-1),"ddd, mmm d, yyyy")→ "Fri, Jan 30, 2026"

Steps back one working day from the first day of next month, which gives the last working day of this month. Jan 31, 2026 is a Saturday, so this returns Friday Jan 30.

Example data

1OrderOrder dateLead time (days)Holidays
2PO-552112/19/2025512/25/2025
3PO-553012/22/2025312/26/2025
4PO-55441/2/2026101/1/2026

Common mistakes

  • Counting the start date

    WORKDAY starts counting the day after start_date. One working day after a Friday is the next Monday.

  • Holiday range moves when filled down

    Lock the holiday list with $, as in $E$2:$E$4, before copying the formula to other rows.

  • Holidays typed as text

    Holiday cells must be real dates. Text such as "Christmas" in the list returns #VALUE!.

  • A different weekend

    WORKDAY always treats Saturday and Sunday as the weekend. For other weekends, use WORKDAY.INTL, which lets you choose the weekend days.

FAQ

How do I exclude public holidays with WORKDAY?+

Put the holiday dates in a range and pass it as the third argument: =WORKDAY(B2,5,$E$2:$E$10).

What if my weekend is Friday and Saturday?+

Use WORKDAY.INTL with a weekend code: =WORKDAY.INTL(B2,5,7) treats Friday and Saturday as the weekend.

What's the difference between WORKDAY and NETWORKDAYS?+

WORKDAY takes a number of working days and returns a date. NETWORKDAYS takes two dates and counts the working days between them.

Lesson

Master WORKDAY step by step: Workdays: NETWORKDAYS and WORKDAY

Count working days between two dates with NETWORKDAYS and find a deadline a number of working days away with WORKDAY, skipping weekends and a holiday list.

Related functions

NETWORKDAYSEOMONTHTODAY