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,232 recorded answers
Recorded: 1,212 in the answer bank and 20 workbook cells. How we measure this · See the Rust code
| Language | Name in Excel |
|---|---|
| Arabic | AVERAGEA |
| Bulgarian | AVERAGEA |
| Czech | AVERAGEA |
| Danish | MIDDELV |
| German | AVERAGEA |
| Greek | AVERAGEA |
| English (Australia) | AVERAGEA |
| English (United Kingdom) | AVERAGEA |
| English (United States) | AVERAGEA |
| Spanish | AVERAGEA |
| Estonian | AVERAGEA |
| Finnish | KESKIARVOA |
| French | AVERAGEA |
| Hebrew | AVERAGEA |
| Croatian | AVERAGEA |
| Hungarian | ÁTLAGA |
| Indonesian | AVERAGEA |
| Italian | AVERAGEA |
| Japanese | AVERAGEA |
| Korean | AVERAGEA |
| Lithuanian | AVERAGEA |
| Latvian | AVERAGEA |
| Norwegian | GJENNOMSNITTA |
| Dutch | AVERAGEA |
| Polish | ŚREDNIA.A |
| Portuguese (Brazil) | MÉDIAA |
| Portuguese (Portugal) | MÉDIAA |
| Romanian | AVERAGEA |
| Russian | AVERAGEA |
| Slovak | AVERAGEA |
| Slovenian | AVERAGEA |
| Serbian (Latin) | AVERAGEA |
| Swedish | AVERAGEA |
| Thai | AVERAGEA |
| Turkish | ORTALAMAA işlevi |
| Ukrainian | AVERAGEA |
| Vietnamese | AVERAGEA |
| Chinese (Simplified) | AVERAGEA |
| Chinese (Hong Kong) | AVERAGEA |
| Chinese (Traditional) | AVERAGEA |
Names from Microsoft's support site.
AVERAGEA(value1, [value2], ...)
AVERAGEA(value1, [value2], …) returns the arithmetic mean
AVERAGEA = (1/n) · Σ_{i=1..n} v_i
The consequence is worth stating baldly, because it is the entire reason the function exists
and the entire reason it surprises people: text does not merely join the sum as zero, it joins
the count. A column holding 10, 20 and the word "n/a" averages to 15 under AVERAGE
and to 10 under AVERAGEA. Neither result is a bug. AVERAGEA is answering "what is the mean
if every non-empty entry is worth something, and unusable entries are worth nothing", which is
a legitimate question and a different one.
Range: as with AVERAGE, the result of finite inputs lies between the smallest and largest
admitted value — where the admitted values now include the zeros contributed by text.
| Argument | Meaning | Default |
|---|---|---|
value1 | The first value, range or array. Required. | — |
value2 … | Further values, ranges or arrays. Optional, repeating. | — |
| Value | AVERAGE, direct | AVERAGE, in range | AVERAGEA, direct | AVERAGEA, in range |
|---|---|---|---|---|
| Number | counted | counted | counted | counted |
Numeric text "2" | converted | skipped | converted | counted as 0 |
Non-numeric text "x" | #VALUE! | skipped | #VALUE! | counted as 0 |
Empty string "" | #VALUE! | skipped | #VALUE! | counted as 0 |
TRUE / FALSE | 1 / 0 | skipped | 1 / 0 | 1 / 0 |
| Empty cell | — | skipped | — | skipped |
| Error | propagates | propagates | propagates | propagates |
Two rows repay attention.
Numeric-looking text in a range counts as 0, not as its numeric value. The reference
engine's averagea_argument_value helper converts text only when it arrived as a direct scalar
argument; text reaching it from a reference returns 0.0 without any conversion attempt. So a
range cell holding the text "2" contributes zero, while the same "2" typed into the
formula contributes two. This is the sharpest edge on the function and the one that turns an
imported CSV — where numbers often arrive as text — into a silently deflated average.
Returns Number.
AVERAGE this is #DIV/0! (nothing admitted); under
AVERAGEA it is 0 (everything admitted, all as zero). The two functions differ between an
error and a number on the same input, which makes this the best single discriminating probe.TRUE cells. They contribute 1, which is almost never what a reader intends and is the
second most common source of a wrong AVERAGEA.lift_broadcast_profile: surface_native) and consumes
arrays as a reduction.arg_domain_guard=none, non_finite=allow).| Error | Condition |
|---|---|
#DIV/0! | No value was admitted |
#VALUE! | A directly-supplied text argument could not be converted to a number |
| propagated | An error value among the admitted data becomes the result |
The floating-point analysis is exactly that of AVERAGE — sequential summation, a condition number of (\sum|v_i| / |\sum v_i|), and one final division — with one addition that is specific to this surface.
The logicals are exact too (1.0 and 0.0 are exactly representable). The only inexactness on
this surface is the same summation and division that AVERAGE has.
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.
AVERAGEA · 1 lines · calc-func/src/catalogue/aggregate.rs on GitHubaggregate(AVERAGEA, "AVERAGEA", VALUES, averagea)
averagea · 7 lines · calc-func/src/catalogue/aggregate.rs on GitHub/// AVERAGEA: AVERAGE, with held text read as 0 and held logicals as 1 and 0.
fn averagea(
arguments: &[CalcValue],
services: &mut EvalServices<'_>,
) -> Result<CalcValue, FunctionFault> {
mean(AVERAGEA, Held::AverageValues, arguments, services)
}
aggregate catalogue/aggregatemean catalogue/aggregateholds_held_arrays catalogue/aggregateread_held_references catalogue/aggregatenumber_of catalogue/aggregateeach_number catalogue/aggregateread_values catalogue/aggregatereader catalogue/aggregateread_reference catalogue/aggregateoperand 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.
COUNT / COUNTA — the same widening, applied to counting. AVERAGEA's denominator is
closer to COUNTA than to COUNT, which is a useful way to remember it.AVERAGEIF with a criterion excluding text. That is a different function
answering the AVERAGE question with extra selection, not the AVERAGEA question.No named variants are recorded yet.
Suggest a correction or contribute an implementation · For agents