WORKDAY.INTL Function (Gnumeric)
Move a date forward or backward by working days using configurable weekends and optional holidays.
Verification status: Official documentation referenced; example outcomes independently reasoned or arithmetically checked where stated. Not executed in Gnumeric. How formula examples are checked
Quick answer
WORKDAY.INTL returns the business date obtained by moving a number of working days forward or backward from a supplied start date, excluding weekend and holiday dates from the day count. In Gnumeric, the third argument configures the weekend and the optional fourth argument supplies holidays. 1.12.62 source.
=WORKDAY.INTL(DATE(2026,10,5),5)
Expected displayed date: 2026-10-12 (Monday), assuming no supplied holidays. Monday October 5 is the start, so Tuesday October 6 is working day 1. The result is a date serial that should be formatted as a date. The answer was independently calculated, not executed in Gnumeric.
Syntax and arguments
=WORKDAY.INTL(start_date, days, [weekend], [holidays])
| Argument | Required? | Value and interpretation | Default |
|---|---|---|---|
start_date |
Yes | Valid date serial, date-valued cell or DATE(...). |
None |
days |
Yes | Signed number of working days to move; positive forward, negative backward; the tagged implementation casts fractional values to an integer toward zero. | None |
weekend |
No | Built-in weekend code 1–7, 11–17, or seven-character Monday–Sunday text mask (1 means a non-working day). |
1 = Saturday/Sunday |
holidays |
No | Date range/array of additional closure days excluded from movement. | No additional excluded days |
"0000011" means Saturday/Sunday are off; "0000110" means Friday/Saturday are off; code 11 means Sunday alone is off. The source documents defaults and Excel-compatible argument order and reorders the .INTL arguments before calling the older WORKDAY implementation. Release-tagged source. These examples show commas in English-locale syntax; actual locale/date formatting may differ. Use Gnumeric’s formula editor if punctuation is not accepted.
Recreate a due-date planner
Use these inputs: A2 =DATE(2026,10,5) (Monday); B2 numeric value 5; C2 =DATE(2026,10,7) (Wednesday closure). Enter each formula into another cell and apply a date display format if the output shows a serial number.
| Formula | Expected displayed date | Explanation |
|---|---|---|
=WORKDAY.INTL(A2,B2) |
2026-10-12 |
Five Monday–Friday workdays after Oct 5. |
=WORKDAY.INTL(A2,B2,11) |
2026-10-10 |
Sunday-only weekend; Saturday is a workday. |
=WORKDAY.INTL(A2,B2,1,C2:C2) |
2026-10-13 |
Wednesday closure pushes the fifth workday one day later. |
=WORKDAY.INTL(A2,-2) |
2026-10-01 |
Two weekdays backward: Fri Oct 2, Thu Oct 1. |
=WORKDAY.INTL(A2,0) |
2026-10-05 |
Zero adjustment returns the starting date in the tagged source. |
Validation: independent Python datetime workday step calculations; the above are expected results, not native Gnumeric screenshots or run logs.
Advanced scenarios: unusual shifts and negative offsets
A retail team working Monday–Thursday and Sunday but not Friday/Saturday can use:
=WORKDAY.INTL(A2,5,"0000110")
For holidays supplied on H2:H30, the pattern remains the third argument and the range is the fourth:
=WORKDAY.INTL(A2,10,"0000110",H2:H30)
Holiday dates excluded by the weekend are not counted as extra lost workdays in the tagged source. Duplicate holiday serials are removed from its internal sequence. Implementation, holiday collection. Avoid typing holidays as plain text or using time-only values.
Fractional days: source calculates idays = (int)days (after an integer limit check), so for a value such as 2.9 it advances two days, not three. This is a source-derived expectation, not a cross-application guarantee. Prefer whole integers in working schedules. Source.
Errors, boundaries and troubleshooting
| What you see | What to check |
|---|---|
#VALUE! |
Invalid starting date, invalid weekend pattern, holidays of unsuitable type, or no available workdays for a nonzero offset. The tagged implementation has these value-error paths. |
#NUM! |
Excessive magnitude for days or computed result outside the source-supported 1900–9999 year window. |
| A number instead of a date | Apply a date number format; the function returns a date serial. |
| Due date one day early or late | Start date is generally not day 1. Count working dates after it for positive offsets. |
| Unexpected Saturday | 11 means Sunday-only weekend; code 1 means Saturday/Sunday. |
| Unrecognized formula | .INTL appears in the 1.12.62 release; check installed version and function plugin. |
A weekend mask with no permitted working weekdays is an invalid workday schedule for nonzero days, even though counting in NETWORKDAYS.INTL has a distinct all-weekend behavior. Tagged implementation. Registry: COMPLETE, NO_TESTSUITE (that is not evidence of a successful native run). Registry.
Official reference and verification
- Gnumeric — function documentation
- 1.12.62 source
- Release-tagged source
- Implementation, holiday collection
- Source
- Tagged implementation
- Registry
Verification status: Official documentation checked; example outcomes were independently reasoned or arithmetically checked where applicable. Not executed in Gnumeric.
- No genuine Gnumeric screenshots are included; this guide does not use mock application images.