Excel NETWORKDAYS Formula Explained

A practical spreadsheet guide for working-day calculations.

Quick answer

Use Excel NETWORKDAYS to count working days between dates and exclude holidays.

=NETWORKDAYS(start_date,end_date,holidays)

When to use this formula

Use it when you need a repeatable spreadsheet calculation for invoice due dates, project plans, payroll checks, support SLAs, or other weekday-based deadlines. It is especially useful when you have a list of company shutdown days or public holidays that you want to exclude from the count.

How the syntax works

The NETWORKDAYS function takes three arguments:

  • start_date — the first date in your range. If this is a working day, it is included in the count.
  • end_date — the final date. This date is also included if it falls on a weekday.
  • holidays — optional. A range of cells listing dates to exclude, such as a bank holiday list. If omitted, only weekends are skipped.

Worked example: July 2026

Suppose you need to count working days in July 2026 for a monthly payroll run. You track UK bank holidays in cells D2:D10. The formula is:

=NETWORKDAYS(DATE(2026,7,1), DATE(2026,7,31), D2:D10)

ComponentValueNotes
Start date1 July 2026Wednesday
End date31 July 2026Friday
Total calendar days31Full month
Weekend days84 Saturdays + 4 Sundays
Bank holidays in range0None in July (UK)
Result: working days2331 − 8

What about the holidays argument?

The third argument is where NETWORKDAYS becomes much more useful than manual counting. Create a separate sheet or range called Holidays and list every public holiday and company closure date your organisation observes. When you reference that range in the formula, each matching date is excluded from the working day count.

For example, May 2026 has two UK bank holidays. Without the holidays argument, NETWORKDAYS returns 21 working days. With the holidays argument referencing those two dates, the result drops to 19 — which matters for payroll, project deadlines, and SLAs.

NETWORKDAYS vs NETWORKDAYS.INTL

If your working week is not Monday–Friday — for example, a Sunday–Thursday pattern common in parts of the Middle East — use NETWORKDAYS.INTL instead. It accepts a weekend parameter that lets you define which days are non-working days. The regular NETWORKDAYS function always assumes Saturday and Sunday are the weekend.

Common checks

  • Make sure your date cells are real dates, not text. Dates stored as text will cause a #VALUE! error.
  • Keep public holidays in a separate list or named range so you can reuse it across multiple formulas.
  • Confirm whether the start date should count. NETWORKDAYS includes both start and end dates if they fall on weekdays.
  • If your result seems off by one, check whether the start date should be included or excluded per your policy.

Need a quick answer without spreadsheet setup?

FAQs

What does NETWORKDAYS do?

NETWORKDAYS counts weekdays between two dates and can exclude a list of holiday dates.

Does NETWORKDAYS include the start date?

Yes, if the start date is a working day it is included in the count.

Can I use holidays?

Yes. Add a holiday range as the third argument.