ISOYEAR Function (Gnumeric)
Learn about the ISOYEAR function in Gnumeric, with usage notes and documentation links.
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
=ISOYEAR(DATE(2021,1,1)) returns the expected value 2020, because January 1, 2021 is in the final ISO week of 2020. By contrast, =YEAR(DATE(2021,1,1)) returns calendar year 2021. Use ISOYEAR when labeling ISO weeks, not when extracting a conventional calendar year.
Exact syntax, inputs, version, and return type
=ISOYEAR(date)
date(required): a valid spreadsheet date serial value, date cell, or expression evaluating to such a serial. The Gnumeric 1.12.62 function registration declares exactly one numericfargument; it has no optional parameters.- Output: an integer ISO 8601 week-numbering year. Most dates have the same ISO and calendar year; some early January dates fall in the preceding ISO year and some late December dates in the following ISO year.
- Invalid dates: official tagged source returns
#VALUE!if conversion to a valid GDate fails; exact treatment of blank input, text and nested errors still needs native testing. - Implementation: the official
gnumeric_isoyearimplementation computes the ISO week number, starts with the calendar year, subtracts one when a January date belongs to week 52 or 53, and adds one for December dates belonging to week 1. Tagged registry labels UNIQUE_TO_GNUMERIC and NO_TESTSUITE; these are source metadata categories, not proof of runtime execution in this run. - Version/platform: documented against tagged Gnumeric 1.12.62 source. No verified first-added release or cross-platform deployment guarantee is claimed.
- Locale: English examples use
DATE(year,month,day)commas; localized function names/argument separators and date text handling can differ. Numeric date construction avoids ambiguous imported dates such as02/03/2021.
The tagged definitions for help_isoyear, gnumeric_isoyear and registry entry were read on 2026-10-11 in the official Gnumeric source; see the sources below and the example-check record at the end of this guide.
Reproducible worksheet: calendar year versus ISO year
Type the following formulas in A2:A10. Enter =YEAR(A2) in B2, =ISOWEEKNUM(A2) in C2, and =ISOYEAR(A2) in D2, then fill B2:D2 through row 10.
On a narrow screen, scroll this table sideways to see every column.
| Row | A: actual date formula | Expected YEAR (B) | Expected ISOWEEKNUM (C) | Expected ISOYEAR (D) |
|---|---|---|---|---|
| 2 | =DATE(2000,1,1) |
2000 | 52 | 1999 |
| 3 | =DATE(2008,1,1) |
2008 | 1 | 2008 |
| 4 | =DATE(2016,1,1) |
2016 | 53 | 2015 |
| 5 | =DATE(2019,12,30) |
2019 | 1 | 2020 |
| 6 | =DATE(2020,12,31) |
2020 | 53 | 2020 |
| 7 | =DATE(2021,1,1) |
2021 | 53 | 2020 |
| 8 | =DATE(2021,1,4) |
2021 | 1 | 2021 |
| 9 | =DATE(2024,12,30) |
2024 | 1 | 2025 |
| 10 | =DATE(2026,12,31) |
2026 | 53 | 2026 |
Real-world scenario: trustworthy weekly sales reporting
Suppose a store groups daily sales by ISO week. A spreadsheet table can hold each transaction date in A, sale amount in B, ISO year in C (=ISOYEAR(A2)) and ISO week in D (=ISOWEEKNUM(A2)). Pivot/group by both columns, not by YEAR(A2) and ISOWEEKNUM(A2) together. A sale on December 30, 2019 must join 2020, week 1, and one on January 1, 2021 joins 2020, week 53. Grouping by ordinary YEAR would incorrectly split or mislabel the same ISO week around the year boundary.
If a text label is required, check and format the two output columns separately first; a compound label uses additional function formatting that should receive its own native test.
Advanced alternative formula for portable workbooks
The ISO week-year is the calendar year of that week’s Thursday. With a valid date in A2 and Monday-based WEEKDAY(date,2) numbering, an equivalent formula for the year is:
=YEAR(A2-WEEKDAY(A2,2)+4)
For DATE(2021,1,1) (Friday, weekday 5), this shifts back to 2020-12-31 (Thursday), giving 2020. For DATE(2019,12,30) (Monday, weekday 1), it shifts to 2020-01-02, giving 2020. These date shifts were calculated independently, but actual Gnumeric cell coercion and date-system edge cases were not native-tested.
This avoids assuming all other spreadsheet programs expose a function named ISOYEAR: for example, Microsoft Excel has ISO week numbering through ISOWEEKNUM, but this tutorial does not claim Excel has an identically named built-in ISOYEAR.
Troubleshooting: wrong year or error
- January 1 mismatch: 2021-01-01 is ISO year 2020. This is intended, not a one-year arithmetic bug.
- December changeover: 2019-12-30 is ISO year 2020. A naive
YEAR(A2)mislabels it. - Wrong pairing: always pair
ISOYEAR(A2)withISOWEEKNUM(A2), not withWEEKNUM(A2)using its default Sunday-start system. - Text-formatted input: re-enter a valid numeric date with
DATEor validate the imported text conversion. A plain string may not behave like a date serial in every locale. - Bad date serial: the 1.12.62 implementation returns
#VALUE!after failed date conversion/validation; no claim is made about particular blank-cell or text coercion edge cases without an application test. - Confusing ISO year with fiscal year: ISOYEAR means the standardized week-numbering year, not a customizable fiscal reporting year.
Compatibility and technical limits
ISO 8601 week-year arithmetic is standard, but different spreadsheet products expose it through different built-ins or date arithmetic. Excel provides ISO week number functionality; its ordinary YEAR is not equivalent to ISOYEAR at year boundaries. In LibreOffice Calc, ISO-style week numbering is available with the documented WEEKNUM(date;21) method. The Thursday-shift alternative above uses broadly common YEAR and WEEKDAY functions, but verify locale punctuation and date systems before reusing it. Gnumeric 1.12.62 source metadata records no testsuite for this function: documentation inspection is not equivalent to native evaluation.
Related Gnumeric tutorials
- ISOWEEKNUM — calculate the accompanying ISO week number.
- WEEKNUM — compare other week-number systems.
- WEEKDAY — shift a date to the ISO week’s Thursday.
- YEAR — ordinary Gregorian year extraction.
- DATE — create reliable date serials.
Official references and validation log
- Gnumeric tagged 1.12.62
fn-dateimplementation — date conversion, ISO year adjustment,fargument andNO_TESTSUITE, accessed 2026-10-11. Official file Git blob SHA48039e8480fabf4fb241e2ee3341ec5160952344. - Gnumeric official function catalogue — catalogue presence, accessed 2026-10-11.
- GNOME release directory — tagged 1.12.62 release scope, accessed 2026-10-11.
- Microsoft Excel’s official ISOWEEKNUM reference — Excel’s similar ISO week feature, accessed 2026-10-11.
- LibreOffice Calc official WEEKNUM reference —
WEEKNUMISO method, accessed 2026-10-11.
How this guide was checked
The syntax and behaviour are based on the Gnumeric references cited above. The sample calculations were independently checked; they are expected results, not outputs observed in Gnumeric. Test locale-sensitive text conversion and imported files in your own installation. View the example-check record.