AVERAGEA 関数は、文字や TRUE・FALSE も数に入れて平均する関数です。文字は 0、TRUE は 1、FALSE は 0 として計算します。「欠席」と入った人を 0 点として平均したいときに =AVERAGEA(B2:B6) と書きます。
ふつうの AVERAGE は文字を無視するので、結果がちがいます。この記事では、AVERAGEA と AVERAGE の違いを、実際の Excel で確かめた結果で説明します。
AVERAGEA 関数の書き方
=AVERAGEA(値1, [値2], …)
| 引数 | 意味 |
|---|---|
| 値 | 平均する範囲や値。文字は 0、TRUE は 1、FALSE は 0 として数える(空白のセルは数えない) |
表の高橋は「欠席」(文字)、伊藤は空白です。
1. AVERAGE で平均する
くらべるために、ふつうの AVERAGE で平均します。
=AVERAGE(B2:B6)

結果は 80.0 でした(80・70・90 の 3 人で平均)。
2. 「欠席」を 0 点として平均する(AVERAGEA)
AVERAGEA にすると、「欠席」の文字が 0 として数に入ります。
=AVERAGEA(B2:B6)

結果は 60.0 でした。80・70・0・90 の 4 人で平均しています。空白の伊藤は数に入りません。
3. TRUE・FALSE から出席率を出す
TRUE を 1、FALSE を 0 として平均すると、TRUE の割合になります。チェックボックスの結果(TRUE・FALSE)にも使えます。
=AVERAGEA(C2:C6)

結果は 60% でした(5 人中 3 人)。AVERAGE だと TRUE・FALSE を無視するので、下の検証のように #DIV/0! になります。
【実機で検証】AVERAGEA でつまずくところ

| ためしたこと | 式 | 結果 |
|---|---|---|
| COUNT で数えた人数(点数) | =COUNT(AVERAGEA!B2:B6) | 3 |
| COUNTA で数えた人数(点数) | =COUNTA(AVERAGEA!B2:B6) | 4 |
| 出席を AVERAGE で平均 | =AVERAGE(AVERAGEA!C2:C6) | #DIV/0! |
| 値を直接 AVERAGEA(TRUE,FALSE) | =AVERAGEA(TRUE,FALSE) | 0.5 |
| 文字の数字 “50” が入ったセル(A12:A13)の AVERAGEA | =AVERAGEA(A12:A13) | 50.0 |
点数の列を COUNT で数えると 3 人、COUNTA だと 4 人でした。AVERAGE は COUNT の人数で、AVERAGEA は COUNTA の人数で割っていると考えると分かりやすいです。
出席の TRUE・FALSE を AVERAGE で平均すると #DIV/0! になりました。値を直接書いた AVERAGEA(TRUE,FALSE) は 0.5 です。
セルに文字として入った「50」は、AVERAGEA では 0 として計算され、50 と 100 の平均は 50.0 になりました。数字が文字になっていないか確かめます。
よくある質問
空白も 0 点として平均したいときは?
AVERAGEA は空白のセルを数に入れません。空白も 0 にしたいときは、=SUM(B2:B6)/ROWS(B2:B6) のように人数で割ります。
0 点を除いて平均したいときは?
=AVERAGEIF(B2:B6,"<>0") で 0 以外の平均が出せます。AVERAGEIF関数の使い方も参考にしてください。
最大・最小でも文字を 0 にしたいときは?
MAXA・MINA 関数が同じ考え方です。MAX・MAXA関数で説明しています。

コメント