ISEVEN in Calligra Sheets: Even-number tests and fractional inputs
Identify even numbers with ISEVEN, including negative values, fractional truncation and error handling.
Verification status: Official documentation referenced; example outcomes independently reasoned or arithmetically checked where stated. Not executed in Calligra Sheets. How formula examples are checked
Release and verification scope. This guide checks the KDE Calligra Sheets release listing, which lists 26.08.2 (October 8, 2026) as the newest entry on October 12, 2026, together with the official function handbook, the version-pinned C++ implementation and its XML function description. The handbook has older editorial material: catalogue presence alone does not prove runtime behavior in every Linux package or build. Native Calligra execution was unavailable. Results are identified as KDE-documented, source-inferred or independently calculated expected; none are observed Calligra outputs. These examples use the English function names and a semicolon when a formula has multiple arguments, as used in KDE documentation. Locales may change argument separators, decimal signs, display of TRUE/FALSE and localized names; verify the entry in the installed Function Browser. A one-argument formula needs no separator.
Quick answer: Use =ISEVEN(value) to identify an even integer or number whose fractional part is ignored for the parity test. A TRUE result can drive alternating-row labels, validation rules and grouping formulas; it is not a test of whether an input was originally an integer.
What ISEVEN does—and why fractions matter
An integer is even when division by two leaves no remainder. KDE documents ISEVEN(12) as TRUE and ISEVEN(-7) as FALSE. The 26.08.2 implementation delegates to ValueCalc::isEven, which reduces a nonnegative input with roundDown and a negative input with roundUp before checking % 2. Those two directions amount to dropping the fractional part toward zero in the examined implementation. This makes ISEVEN(2.9) source-inferred TRUE even though 2.9 itself is not an integer.
If your purpose is to reject fractional numbers, ISEVEN alone is insufficient: validate integer-ness separately before applying the parity check. A number formatted without decimals is not necessarily stored as an integer.
Exact published syntax and arguments
=ISEVEN(x)
| Position | KDE argument | Required | KDE 26.08.2 XML type | Default |
|---|---|---|---|---|
| 1 | x |
Yes | Any (the intended parity use is numeric) |
None |
The function returns a Boolean TRUE/FALSE. There is one parameter, no optional second parameter, and no rounding-mode setting. The pinned source also registers compatibility spelling COM.SUN.STAR.SHEET.ADDIN.ANALYSIS.GETISEVEN via setAlternateName; this is an alias, not a different calculation. See the handbook ISEVEN entry, the XML definition and C++ registration.
Reproduce in a blank worksheet
Put exactly these literal numbers into column A; enter the formula shown in column B independently for each row, or enter it in B2 and fill downward.
| Cell | Input | Formula | Expected Boolean | Validation basis |
|---|---|---|---|---|
| A2 | 12 | =ISEVEN(A2) |
TRUE | KDE-documented |
| A3 | -7 | =ISEVEN(A3) |
FALSE | KDE-documented |
| A4 | 0 | =ISEVEN(A4) |
TRUE | Mathematical check plus source |
| A5 | 2.9 | =ISEVEN(A5) |
TRUE | Source-inferred fractional truncation |
| A6 | -2.9 | =ISEVEN(A6) |
TRUE | Source-inferred negative truncation |
| A7 | 3.7 | =ISEVEN(A7) |
FALSE | Source-inferred fractional truncation |
The independent calculation for A5 is floor(2.9) = 2, and 2 % 2 = 0; for A6 the code selects ceil(-2.9) = -2, and -2 % 2 = 0. These are expected values, not observed worksheet results. 0 is even by the definition of divisibility by 2. Avoid assuming Boolean display capitalization is identical in every locale.
Advanced example: alternating shipment groups
Suppose A2:A6 holds ordered package numbers 101, 102, 103, 104, 105. In B2:
=IF(ISEVEN(A2);"Group B";"Group A")
Fill down B6. The independently calculated expected groups are A, B, A, B, A. This is useful for splitting work into alternating queues without manually assigning each row. It assumes the identifiers are numeric integers; text order numbers or missing IDs must be cleaned before applying this rule.
Advanced example: don’t misclassify decimal values
For a deliberate integer-only rule, examine the distinction between these approaches:
=ISEVEN(A2)
=IF(A2=TRUNC(A2);ISEVEN(A2);"Needs whole number")
For A2 = 4.5, the first expression is source-inferred TRUE, whereas the second is independently expected to show Needs whole number. The combined example assumes the documented TRUNC semantics for numbers and uses semicolons for three-argument IF. Test and normalize nonnumeric imports first. A hidden decimal can change meaning without changing the displayed cell formatting.
Error handling, limitations and troubleshooting
- Not an integer: Fractional parts are removed at the
ValueCalc::isEvenhelper level; this is not equivalent to asking whetherxis an integer. Use an explicit integer validation where input quality matters. - Unexpected negative parity: The examined helper rounds negatives upward to zero (for example -2.9 → -2) for the parity test, not down to -3. Do not confuse this with worksheet
INTbehavior. - Error input: The ISEVEN C++ callback explicitly returns an input error unchanged. An exact displayed error token remains untested natively. Do not promise FALSE for an error.
- Text and blanks: The XML declares
Any, but numeric coercion depends on the calculation engine and locale.ISEVEN("2"), empty references, and whitespace-padded values are not established as accepted values by the documentation/source checks here. Use a typed number and test edge cases in your installation. - Large or non-finite numbers: Numeric representation and conversion can make edge values unreliable; the accepted integer magnitude was not benchmarked. Use small integer test values for validation and document range constraints for real data.
- Wrong argument count: The documented syntax has exactly one required parameter. Error wording on zero or multiple arguments is installation-specific and was not observed.
Excel and cross-application compatibility
Microsoft’s Excel ISEVEN documentation also describes truncation of fractional numeric arguments. The general idea and the simple positive/negative integer examples transfer. Do not assume identical coercion of strings, blanks, arrays, numeric bounds or error tokens across Excel, LibreOffice and Calligra. In Excel, TYPE-aware or ISNUMBER validation can be used to guard imports; verify your target application’s rule before moving a workbook. The long COM.SUN...GETISEVEN spelling is a Calligra-registered compatibility alias.
Related trustworthy references
The Calligra function index and cross-spreadsheet comparison page were accessible on October 12, 2026. Compare the parity partner ISODD, the number-type checker ISNUMBER, and numeric handling TRUNC.. Official evidence: ISEVEN reference, 26.08.2 information XML, C++ callback, ValueCalc parity helper, and KDE release listing, all accessed 2026-10-12.