Excel 16.0 build 20430
Windows, 64-bit, CPU not recorded
1,212 captured inputs are indexed for this environment. Capture dates: 2026-09-29 to 2026-09-29. This is a reading count, not a comparison with another build.
Statistical functions
Matches all 1,228 recorded answers
Recorded: 1,212 in the answer bank and 16 workbook cells. How we measure this · See the Rust code
| Language | Name in Excel |
|---|---|
| Arabic | MAXA |
| Bulgarian | MAXA |
| Czech | MAXA |
| Danish | MAKSV |
| German | MAXA |
| Greek | MAXA |
| English (Australia) | MAXA |
| English (United Kingdom) | MAXA |
| English (United States) | MAXA |
| Spanish | MAXA |
| Estonian | MAXA |
| Finnish | MAKSA |
| French | MAXA |
| Hebrew | MAXA |
| Croatian | MAXA |
| Hungarian | MAXA |
| Indonesian | MAXA |
| Italian | MAXA |
| Japanese | MAXA |
| Korean | MAXA |
| Lithuanian | MAXA |
| Latvian | MAXA |
| Norwegian | MAKSA |
| Dutch | MAXA |
| Polish | MAX.A |
| Portuguese (Brazil) | MAXA |
| Portuguese (Portugal) | MÁXIMOA |
| Romanian | MAXA |
| Russian | МАКСА |
| Slovak | MAXA |
| Slovenian | MAXA |
| Serbian (Latin) | MAXA |
| Swedish | MAXA |
| Thai | MAXA |
| Turkish | MAKA işlevi |
| Ukrainian | MAXA |
| Vietnamese | MAXA |
| Chinese (Simplified) | MAXA |
| Chinese (Hong Kong) | MAXA |
| Chinese (Traditional) | MAXA |
Names from Microsoft's support site.
MAXA(value1, [value2], ...)
MAXA(value1, [value2], …) returns the largest value in a set, where logical values and
text are converted to numbers rather than skipped.
The consequence that matters, and the reason the function exists: because text and FALSE
convert to 0 rather than being skipped, MAXA can never return a negative number when any
text or FALSE is present in the data. A column of negative measurements with one "n/a"
typed into it has MAXA equal to 0, and the 0 is not in the data. MAXA is therefore not
a selector in the sense MAX is: its result need not be one of its inputs.
That is a feature when the zeros are meaningful — "no reading" genuinely means zero — and a
trap otherwise. It is the reason MAXA should be chosen deliberately rather than reached for
as "MAX but more inclusive".
| Argument | Meaning | Notes |
|---|---|---|
value1 | The first value | Required |
value2, … | Further values | Optional; "Number arguments 2 to 255" |
Argument boundaries carry no meaning; all slots pool into one reduction.
Read as a table, Microsoft's rules give:
| Value | Typed directly into the argument list | Reached inside an array or reference |
|---|---|---|
| Number | counted | counted |
TRUE | counted as 1 | counted as 1 |
FALSE | counted as 0 | counted as 0 |
| Text that reads as a number | counted as its numeric value | see below |
| Text that does not read as a number | error | see below |
| Empty cell | — | ignored |
| Error value | error | error |
The two "see below" cells are a documented contradiction, and the Handbook publishes it as a finding rather than choosing a side. Microsoft's own page says both of the following about text inside a reference:
These cannot both hold for text in a reference. If text evaluates as 0 it is counted and
drags the maximum up toward zero; if it is ignored it contributes nothing and the maximum of an
all-negative column stays negative. The two readings differ on exactly the case that
distinguishes MAXA from MAX, and they differ in the sign of the answer.
The Handbook has not observed which reading Excel implements, and does not assert one from memory. What can be said:
MAXA a reason to exist as a separate function; under rule 2
applied to text, MAXA and MAX would differ only on logicals in references.A-suffix family's stated purpose — Microsoft's MAX page points at MAXA as the way
to "include logical values and text representations of numbers in a reference as part of the
calculation" — is consistent with rule 1.Returns Number. Unlike MAX, the result need not be one of the input values, because text
and FALSE are converted rather than selected.
0; under rule 2 it is the
no-values case, which is also 0. The two readings happen to coincide here, which is why
this input does not discriminate between them. The discriminating input is an all-negative
numeric column with one text cell in it.TRUE in a reference is counted as 1 — this part of the family's purpose is not in
dispute, and it is the cleanest observable difference from MAX.| Error | Condition | Basis |
|---|---|---|
#VALUE! | A directly-passed argument is text that cannot be translated into a number | Documented on Microsoft's MAXA page |
| propagated | An argument is an error value | Documented ("arguments that are error values … cause errors") |
There is no documented #NUM! or #DIV/0! condition, and no documented empty-input error —
the documented empty-input answer is 0.
There is no floating-point arithmetic in MAXA beyond the conversions, so there is no
rounding error to analyse. Three implementation observations are worth recording anyway.
The empty-set identity is 0, and it is not −∞. The same associativity trap described on
the MAX page applies here and is worse, because MAXA reaches 0 through two
independent routes — the no-values rule and the text-converts-to-zero rule. A hierarchical
computation that takes MAXA of column MAXAs over all-negative data will report 0 if any
column is empty or contains any text. An implementer should track "have I seen an admissible
value" as a separate flag from the running best, and must not initialise the accumulator to
0.
Quoted from the public repository DnaCalc/DnaCalc, crates calc-func and calc-fml, at commit 9e1884369a67. Comments are the source's own. A kernel shared with other functions appears once, on its module page.
MAXA · 1 lines · calc-func/src/catalogue/aggregate.rs on GitHubaggregate(MAXA, "MAXA", VALUES, maxa)
maxa · 7 lines · calc-func/src/catalogue/aggregate.rs on GitHub/// MAXA: MAX, with held text read as 0 and held logicals as 1 and 0.
fn maxa(
arguments: &[CalcValue],
services: &mut EvalServices<'_>,
) -> Result<CalcValue, FunctionFault> {
extreme(MAXA, Held::Values, |n, best| n > best, arguments, services)
}
aggregate catalogue/aggregateextreme catalogue/aggregateholds_held_arrays catalogue/aggregateread_held_references catalogue/aggregatenumber_of catalogue/aggregateeach_value catalogue/aggregateread_values catalogue/aggregatereader catalogue/aggregateread_reference catalogue/aggregateoverflow_numbers catalogue/comparisonnumbers catalogue/comparisonin_band catalogue/comparisonRounded::up catalogue/comparisonRoundings::of catalogue/comparisonRoundings::disjoint catalogue/comparisonlow32 decimalNatural::from_u64 decimalNatural::pow10 decimalNatural::normalize decimalNatural::is_zero decimalNatural::mul_add_small decimalNatural::times_pow10 decimalNatural::times_pow5 decimalNatural::times_pow2 decimalExactDecimal::binary decimaloperand coerceNo implementation has been published with a Handbook test suite for this function.
The recorded environments below distinguish a reading from a same-input comparison. Counts describe captured inputs in each environment; overlapping captures and comparisons are not totals of unique worksheet calls.
| Excel 16.0 build | Platform and CPU | Captured inputs |
|---|---|---|
| 20430 | Windows, 64-bit, CPU not recorded | 1,212 |
The record contains no same-input comparison between these environments. Reading different inputs on different builds does not establish either a version change or cross-build agreement.
Recorded environments and comparison details.
Windows, 64-bit, CPU not recorded
1,212 captured inputs are indexed for this environment. Capture dates: 2026-09-29 to 2026-09-29. This is a reading count, not a comparison with another build.
MAXA as the remedy for wanting logicals and numeric text counted. Read both coercion
tables side by side before choosing; they differ on four rows.MINA: text
and FALSE converting to 0 puts a ceiling of zero on MINA over all-positive data,
which is the more frequently encountered version of the trap.A suffix family: AVERAGEA,
COUNTA, STDEVA, STDEVPA,
VARA, VARPA. These share an intent — count more kinds of
value — and do not share one uniform rule. COUNTA in particular counts anything
non-empty including text, without converting it. Each page states its own table; do not
generalise from this one.MAX, in both directions. A workbook that switched from MAX to MAXA
to "make it handle the text cells" has changed the answer on every column containing text,
usually by clamping it at zero.No named variants are recorded yet.
Suggest a correction or contribute an implementation · For agents