Contact

Calligra Sheets MONTHNAME: Month Names, Locale and Examples

Date & Time Beginner Calligra Sheets

Learn Calligra MONTHNAME(number) for full localized month names, 12 worked examples, date-based labels and locale troubleshooting.

Verification status: Consult the documentation and examples below. Native application testing has not been documented for this guide. How formula examples are checked

Purpose and quick answer

MONTHNAME converts a numeric month from 1 to 12 into its localized full month name. An English-locale example is =MONTHNAME(5) with the KDE-documented result May; =MONTHNAME(1) has an expected output of January. The result is a text label, not a date value, so retain the source date separately when you need to sort or calculate. [K1, K3, K4, Q1]

Version and validation: This guide targets Calligra Sheets 26.08.2, released October 8, 2026, with code pinned to the KDE commit 72123cc643f6625351139e7df294544255a1056f. Calligra handbook, XML, C++ registration, implementation, localization wrapper and upstream Qt documentation were reviewed October 13, 2026. The sample names below are expected according to documentation/source and independent Gregorian month enumeration. No native Calligra execution or GUI screenshot was performed. [K1–K6]

Official syntax, argument order and types

=MONTHNAME(number)
Position Argument Documented type Valid range Documented default
1 number Integer / whole number 1–12 None

Calligra’s XML declares one integer parameter, text return type, syntax MONTHNAME(number) and MONTHNAME(5) returns May. The 26.08.2 C++ module registers new Function("MONTHNAME",func_monthname) and adds it, without an alternate name and without an explicit setParamCount call. Consequently, one integer is the intended official input; the exact Calligra behavior of omitted or additional parameters has not been established and must not be invented from the registration. There is no documented format switch, language argument or value for blank input. [K1–K3]

Locale implementation detail: The source converts the input using Calligra’s asInteger, passes it into calc->settings()->locale()->monthName(number), returns the resulting text and checks QString::isNull() for its internal value-error branch. Importantly, Calligra’s separate Localization::monthName wrapper uses Qt C++ QLocale::standaloneMonthName(number, LongFormat), not QLocale::monthName directly. The longFormat default selects full names, and the standalone grammatical form may differ from month names embedded in sentences in some languages. This is source inference, not an observed locale matrix. [K2–K4, Q1]

Numbering and formulas: In the C++ month API, 1=January through 12=December. Do not copy the zero-based month numbering from Qt QML/JavaScript interfaces into this C++-backed Calligra formula. MONTHNAME has only one argument and therefore no separator. The official Calligra handbook uses semicolons in multiargument formulas such as DATE(2024;2;29). Use the separator configured for the installed locale when reproducing nested examples. [K1, K3, K4]

Reproducible worksheet: all twelve months

Enter Month number in A1, Calculated name in B1, and Expected English name in C1. Fill A2:A13 with the integers 1 through 12, each as a numeric cell. Enter =MONTHNAME(A2) in B2 and copy it through B13. If your worksheet’s locale is English, the values in column B are expected to match the following. This table is a documentation/source-supported expectation; it is not a recorded native Calligra execution. [K1–K4, C1]

Row Numeric input A Formula B Expected English result B / reference C
2 1 =MONTHNAME(A2) January
3 2 =MONTHNAME(A3) February
4 3 =MONTHNAME(A4) March
5 4 =MONTHNAME(A5) April
6 5 =MONTHNAME(A6) May
7 6 =MONTHNAME(A7) June
8 7 =MONTHNAME(A8) July
9 8 =MONTHNAME(A9) August
10 9 =MONTHNAME(A10) September
11 10 =MONTHNAME(A11) October
12 11 =MONTHNAME(A12) November
13 12 =MONTHNAME(A13) December

The official handbook directly confirms the May example. The other English names follow the 1–12 range and are independently enumerated using Python calendar.month_name[1:13], alongside the Qt API’s explicit January=1 example; this checks reference values, not native Calligra display behavior. [K1, K3, K4, Q1, C1]

Advanced case 1: derive a month name from a real date

Suppose E1 says Invoice date, F1 says Month number and G1 says Month name. Type =DATE(2024;2;29) into E2 to create a typed date; type =MONTH(E2) into F2; type =MONTHNAME(F2) into G2. The expected F2 value is 2 and the expected English G2 result is February. You can combine these two calls as =MONTHNAME(MONTH(E2)). The official Calligra handbook says MONTH extracts a numeric month and MONTHNAME converts its integer to localized text. [K1, K5, C2]

Cell Input/formula Independently derived or source-inferred expectation
E2 =DATE(2024;2;29) Typed date February 29, 2024
F2 =MONTH(E2) Integer 2
G2 =MONTHNAME(F2) Text February, assuming English locale
H2 =MONTHNAME(MONTH(E2)) Text February, assuming English locale

Don’t pass the date serial directly: =MONTHNAME(E2) supplies a complete date to a function documented for 1–12. Calligra’s integer coercion rules and invalid-input text were not executed; do not predict exactly which error string this mistake will display. The two-stage MONTH composition avoids ambiguous serial-date conversion. [K1, K3, K5]

Advanced case 2: sortable monthly dashboards

Use =MONTH(E2) as a numeric sorting key and =MONTHNAME(MONTH(E2)) as a display label. Alphabetic sorting of text month labels would place April before January; numeric sorting retains calendar order. For several years, group by both YEAR(E2) and MONTH(E2) before labeling—otherwise January 2024 and January 2025 are indistinguishable in the label column. Keep the original typed date for date arithmetic and charts. [K1, K5]

A fiscal year that starts in April does not change the meaning of MONTHNAME(1): that still labels January in the documented numbering. A fiscal-month index is a separate business transformation. Compute it in a helper column as needed, but use the calendar month for the displayed real-world month name. None of these dashboard suggestions implies the output labels were executed or visually checked in native Calligra. [K1, K4, C2]

Error handling and limitations: verify before production

  • Wrong type of argument: MONTHNAME is documented for one whole-number month index, not a string such as "May", a date cell, a decimal, a Boolean or an empty cell. The C++ function calls Calligra’s integer conversion, but the exact result of coercing those inputs was not tested. Do not assert Excel’s or LibreOffice’s coercion rules as Calligra evidence. [K1–K3]
  • Outside the valid range: =MONTHNAME(0), =MONTHNAME(13) and negatives are beyond the documented 1–12 contract. Code checks for QString::isNull() and can return an internal value error, but we cannot guarantee the precise on-screen error or that every invalid number produces a null rather than some other string. Native validation is required. [K1–K4]
  • Too few/too many arguments: The XML describes one integer and no optional inputs, although the C++ registration itself has no setParamCount(1) call. Do not rely on =MONTHNAME() or =MONTHNAME(3;2), and do not claim a specific parser error until executed. [K1, K2]
  • Unexpected language: Names follow Calligra’s workbook locale via the standalone Qt month-name API. A non-English workbook can legitimately differ from the English expected-results table, including grammatical form. Use the numeric MONTH result for logic rather than comparing text to "March". [K3, K4, Q1]
  • Unexpected abbreviated name: MONTHNAME’s pinned wrapper defaults to LongFormat. There is no documented Calligra second argument for requesting ShortFormat. A display cell that looks abbreviated may be a different formula or a custom date format. [K1, K4]
  • Imported formulas: A MONTHNAME formula in Calligra must not be assumed recognized in Microsoft Excel or another spreadsheet. Check available vendor functions before distributing a cross-platform workbook. [K1, M1]

Compatibility: Microsoft Excel and other engines

In Calligra, MONTHNAME(5) is documented as May; a date-based month label is MONTHNAME(MONTH(E2)). In Microsoft Excel, Microsoft’s official help shows TEXT(TODAY(),"dddd, mmmm dd") for displaying day and month text from a date. The corresponding Excel-only pattern for a full month is =TEXT(E2,"mmmm") using Excel’s documented mask. That example is not proof that Calligra’s TEXT masks or month-name function work like Excel’s. We have not verified equivalent names, argument types and locale details for Google Sheets, LibreOffice Calc, OpenOffice Calc, Numbers, PlanMaker, Zoho Sheet or other engines; do not advertise universal compatibility. [K1, M1]

The KDE MONTHNAME handbook entry describes the exact syntax and May example. The KDE MONTH function entry explains converting a date to a numeric month, and the Qt QLocale documentation explains full name and month indexing in the C++ API. These external documentation links were checked October 13, 2026. [K1, K5, Q1]

Official sources, claim trace and validation

ID Claim Version-pinned or vendor documentation, accessed 2026-10-13
K1 MONTHNAME(number) accepts 1–12 and returns text, MONTHNAME(5) = May KDE MONTHNAME handbook
K2 Release registration, no documented second argument, no alias Calligra 26.08.2 datetime.cpp lines 140–143 and official XML
K3 Implementation converts integer and tests null localized month name Calligra 26.08.2 datetime.cpp lines 553–562
K4 Actual wrapper calls QLocale::standaloneMonthName(LongFormat) Calligra Localization.cpp lines 433–441 and header
K5 MONTH extracts a number from a date; DATE builds a typed date KDE MONTH and DATE handbook entries
Q1 Qt C++ month indices and long standalone names Qt’s official C++ QLocale class
K6 Version/release date KDE Calligra application metadata
M1 Excel TEXT mask mmmm is a separate-vendor alternative Microsoft Excel text in formulas
C1 Expected English names from January to December Independently enumerated with Python calendar.month_name[1:13]; not native execution
C2 February 29, 2024 is in month 2 Independently verified with Python datetime.date(2024,2,29).month == 2; nested formula is expected, not observed

Testing limitation: Native workbook locale, import behavior and visible errors remain untested.