WORKDAY.INTL Function (LibreOffice Calc)

Date & Time Advanced LibreOffice Calc Introduced in LibreOffice 4.0
date business-days scheduling custom-weekends project-management holidays calendar

The WORKDAY.INTL function returns a date that is a specified number of working days before or after a given date, using a fully customizable weekend pattern and optional holidays.

Compatibility

What the WORKDAY.INTL Function Does

  • Adds or subtracts working days
  • Lets you define custom weekends
  • Optionally excludes holidays
  • Works with serial dates or text dates
  • Returns a serial date number formatted as a date

It is designed to be flexible, international, and ideal for complex scheduling.

Syntax

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

Arguments

  • start_date:
    The date from which to offset.

  • days:
    Number of working days to add (positive) or subtract (negative).

  • weekend (optional):
    Defines which days are weekends.
    Can be a code or a 7‑character string.

  • holidays (optional):
    A range of dates to exclude.

Weekend Codes

Code Weekend Days
1 Saturday, Sunday
2 Sunday, Monday
3 Monday, Tuesday
4 Tuesday, Wednesday
5 Wednesday, Thursday
6 Thursday, Friday
7 Friday, Saturday
11 Sunday only
12 Monday only
13 Tuesday only
14 Wednesday only
15 Thursday only
16 Friday only
17 Saturday only

Custom Weekend String Format

A 7‑character string of 0s and 1s:

  • Position 1 = Monday
  • Position 7 = Sunday
  • 1 = weekend
  • 0 = working day

Example:
0000011 → Saturday & Sunday weekend
1000000 → Monday weekend only
0000100 → Friday weekend only

Basic Examples

Add 10 working days (default weekend Sat–Sun)

=WORKDAY.INTL("2024-01-01"; 10)

Add 10 working days with Friday–Saturday weekend

=WORKDAY.INTL("2024-01-01"; 10; 7)

Add 10 working days with Sunday‑only weekend

=WORKDAY.INTL("2024-01-01"; 10; 11)

Add 10 working days with custom weekend string (Fri–Sun)

=WORKDAY.INTL("2024-01-01"; 10; "0000111")

Advanced Examples

Next business day with custom weekend

=WORKDAY.INTL(A1; 1; "0000011")

Previous business day

=WORKDAY.INTL(A1; -1; "0000011")

Add 20 working days excluding holidays

=WORKDAY.INTL(A1; 20; "0000011"; C1:C10)

Retail schedule (weekend = Sunday only)

=WORKDAY.INTL(A1; B1; 11)

Middle‑East weekend (Fri–Sat)

=WORKDAY.INTL(A1; B1; 7)

Shift schedule (weekend = Tue–Wed)

=WORKDAY.INTL(A1; B1; 4)

Add working days to a text date

=WORKDAY.INTL(DATEVALUE(A1); 5; "0000011")

Add working days to Excel serial dates imported as text

=WORKDAY.INTL(DATE(1899;12;30)+VALUE(A1); 3; "0000011")

Generate a business‑day schedule

=WORKDAY.INTL($A$1; ROW(A1)-1; "0000011")

Last business day of month (custom weekend)

=WORKDAY.INTL(EOMONTH(A1;0)+1; -1; "0000011")

Holiday Handling

Holiday list example

C1 C2 C3
2024‑01‑01 2024‑02‑19 2024‑04‑01

Use:

=WORKDAY.INTL(A1; 10; "0000011"; C1:C3)

Holidays must be real dates

Use DATEVALUE if imported as text.

Edge Cases and Behavior Details

WORKDAY.INTL returns a number, not text

Accepts:

  • Real dates
  • Serial numbers
  • DATEVALUE outputs
  • ISO date strings

Invalid text → Err:502

Time components are ignored

Negative days allowed

Weekend string must be exactly 7 characters

Holidays override weekends only if they fall on working days

WORKDAY.INTL of an error → error propagates

Common Errors and Fixes

Err:502 — Invalid argument

Cause:

  • Text not recognized as a date
  • Non-numeric days
  • Invalid weekend code or string
  • Holidays contain invalid values

Fix:

  • Wrap with DATEVALUE
  • Ensure weekend string is 7 characters
  • Ensure holidays are real dates

Wrong result due to text dates

Fix:

  • Normalize with DATEVALUE

Holidays not excluded

Cause:

  • Holiday list contains text, not dates

Fix:

  • Convert with DATEVALUE or VALUE

Best Practices

  • Use WORKDAY.INTL for any non‑standard weekend schedule
  • Use WORKDAY for standard Sat–Sun weekends
  • Normalize text dates with DATEVALUE
  • Store holidays in a dedicated range or named range
  • Use custom weekend strings for maximum control
  • Use WORKDAY.INTL(EOMONTH()+1; -1) for last business day of month
WORKDAY.INTL is your fully customizable business‑calendar engine — perfect for international teams, shift work, retail schedules, and any workflow that requires precise control over what counts as a working day.

Related Patterns and Alternatives

  • Use WORKDAY for standard weekends
  • Use NETWORKDAYS.INTL for counting working days
  • Use NETWORKDAYS for standard weekend counting
  • Use DATE for constructing comparison dates
  • Use EDATE and EOMONTH for month offsets

By mastering WORKDAY.INTL and its companion functions, you can build powerful, flexible, and fully business‑aware scheduling workflows in LibreOffice Calc.

Copyright 2026. All rights reserved.