スプレッドシートのAVERAGEA関数の使い方|文字列含む平均

スポンサーリンク

データの平均を出したいけど、範囲に「欠席」や「対象外」といった文字列が混ざっていることってありますよね。

AVERAGE関数なら文字列はスキップしてくれます。でも「文字列が入っているセルも含めて平均を出したい」場面もあります。

そんなときに使うのがAVERAGEA関数です。文字列やFALSEを0、TRUEを1として計算に含めてくれます。

この記事ではAVERAGEA関数の基本から、AVERAGE関数との違い、実務での使いどころまで紹介します。

AVERAGEA関数とは?

AVERAGEA関数(読み方: アベレージエー関数)は、文字列やTRUE/FALSEを含むデータ全体の平均値を返す関数です。

名前は「AVERAGE」に「A(All)」を加えたもので、「すべてのデータを計算対象にする」というイメージです。

AVERAGE関数との最大の違いは、データ型ごとの扱い方です。

セルの内容AVERAGEAVERAGEA
数値計算に含む計算に含む
文字列スキップ0として計算
TRUEスキップ1として計算
FALSEスキップ0として計算
空白セルスキップスキップ

たとえばA1:A5に「80, 70, “欠席”, 90, 60」と入っているとします。

  • =AVERAGE(A1:A5) → 75(数値4つの平均: 300/4)
  • =AVERAGEA(A1:A5) → 60(文字列を0として5つの平均: 300/5)

AVERAGEA関数は文字列セルを分母に含めるため、平均値が変わります。

AVERAGEA関数にできることをまとめると、次のとおりです。

  • 文字列を0として平均に含める
  • TRUEを1、FALSEを0として平均に含める
  • 空白セルはスキップする(AVERAGE関数と同じ)
  • 数値だけの範囲ではAVERAGE関数と同じ結果になる

NOTE

AVERAGEA関数はGoogleスプレッドシートの全バージョンで使えます。Excelにも同名の関数があり、動作もほぼ同じです。

AVERAGEA関数の書き方(構文と引数)

基本構文

=AVERAGEA(値1, [値2], ...)

カッコの中に、平均を求めたいデータやセル範囲を指定します。

引数の説明

引数必須/任意説明
値1必須平均を求めたい最初の値、セル参照、またはセル範囲
値2, …任意追加で平均に含めたい値やセル範囲(最大30個まで)

引数が2つ以上ある場合は、カンマ( , )で区切ります。

AVERAGE関数と構文は同じです。違いは「文字列やTRUE/FALSEをどう扱うか」だけです。

TIP

Excelでは引数を最大255個まで指定できますが、Googleスプレッドシートでは最大30個です。セル範囲を使えば実務で困ることはありません。

AVERAGEA関数の基本的な使い方

ここからは、実際にAVERAGEA関数を使う手順を見ていきましょう。

文字列を含むデータの平均を求める

B2からB6にテストの点数が入っていて、B4に「欠席」という文字列が入っているとします。

=AVERAGEA(B2:B6)

「80, 70, 欠席, 90, 60」の場合、「欠席」は0として計算されます。結果は「60」です。(80+70+0+90+60) / 5 ですね。

AVERAGE関数なら「75」になります。文字列をスキップして (80+70+90+60) / 4 で計算するからです。

TRUE/FALSEを含むデータの平均

チェックボックスの列など、TRUE/FALSEが混在するデータにも使えます。

B2からB5に「80, TRUE, FALSE, 60」が入っているとします。

=AVERAGEA(B2:B5)

TRUEは1、FALSEは0として計算されます。(80+1+0+60) / 4 = 35.25 です。

数値だけの範囲で使った場合

数値だけの範囲ならAVERAGEA関数はAVERAGE関数と同じ結果を返します。

=AVERAGEA(80, 70, 90)

結果は「80」です。文字列やTRUE/FALSEが含まれていなければ、違いはありません。

AVERAGEA関数の実務活用パターン

パターン1: アンケートの回答率を考慮した平均

アンケートで「未回答」のセルがある場合です。B列に回答スコア(1〜5)が入っているとします。未回答のセルには「未回答」と入力されています。

=AVERAGEA(B2:B50)

「未回答」を0として平均に含めることで、回答率を反映した平均が出せます。

ただし、未回答を無視して回答者だけの平均を出したい場合は、AVERAGE関数のほうが適しています。目的に合わせて使い分けてください。

パターン2: 出席率を加味した平均点

テスト結果で「欠席」と記録されている生徒がいる場合です。

=AVERAGEA(C2:C30)

欠席者は0点として分母に含まれます。「全員が受けた場合の平均」を知りたいときに使えます。

受験者だけの純粋な平均点を出したい場合はAVERAGE関数を使いましょう。

パターン3: AVERAGE関数との結果を並べて比較する

同じ範囲に対してAVERAGEとAVERAGEAの両方を出しておくと、データの質が見えてきます。

=AVERAGE(B2:B20)
=AVERAGEA(B2:B20)

2つの値に差があれば、範囲内に文字列やTRUE/FALSEが含まれています。差が大きいほど非数値データが多いとわかります。

パターン4: COUNTA関数と組み合わせて分母を確認する

AVERAGEA関数が何件のデータを分母にしているか確認したいときは、COUNTA関数を使います。

=COUNTA(B2:B20)

COUNTA関数は空白以外のセル数を返します。AVERAGEA関数の分母と一致するので、平均の根拠を添えられます。

よくあるエラーと対処法

AVERAGEA関数はシンプルな関数ですが、結果がおかしいと感じる場面もあります。

症状原因対処法
#DIV/0!エラー範囲内にデータが1つもない(すべて空白)データが入っているか確認する
平均が低すぎる文字列セルが0として含まれている意図どおりか確認。不要ならAVERAGE関数に切り替える
AVERAGE関数と結果が同じ範囲内に文字列やTRUE/FALSEがない数値だけの範囲では同じ結果になる
空白セルの扱いが不明空白はスキップされるAVERAGEA関数でも空白セルは分母に含まれない

#DIV/0!エラーの対処

範囲内がすべて空白セルのとき、分母が0になってこのエラーが出ます。

=IF(COUNTA(B2:B10)=0, "", AVERAGEA(B2:B10))

データが1つもないときは空白を表示し、あるときだけ平均を返します。

平均が低すぎるときの確認方法

AVERAGEA関数で平均が想定より低い場合、文字列が0として計算されている可能性があります。

AVERAGE関数と結果を比べてみてください。

=AVERAGE(B2:B20)   → 文字列をスキップした平均
=AVERAGEA(B2:B20)  → 文字列を0として含めた平均

差があるなら、範囲内に文字列が含まれています。文字列を0として含める意図がなければ、AVERAGE関数に切り替えましょう。

AVERAGE関数との違い・使い分け

AVERAGEA関数とAVERAGE関数は構文が同じで、データ型の扱いだけが異なります。

比較項目AVERAGEAVERAGEA
数値計算に含む計算に含む
文字列スキップ0として計算
TRUEスキップ1として計算
FALSEスキップ0として計算
空白セルスキップスキップ
主な用途数値だけの平均全データ型を考慮した平均

どちらを使うべき?

使い分けの判断基準はシンプルです。

  • 数値だけの平均を出したい → AVERAGE関数
  • 文字列セルも「0」として分母に含めたい → AVERAGEA関数

実務ではほとんどの場面でAVERAGE関数が適しています。AVERAGEA関数を使うのは「欠席者を0点扱いにする」「未回答も含めた平均を見たい」など、文字列を0として含める意図が明確な場面です。

似た関数との違い・使い分け

AVERAGEA関数と関連する関数をまとめました。

関数動作文字列の扱い使いどころ
AVERAGEA全データ型を含む平均0として計算文字列も分母に含めたい
AVERAGE数値の平均スキップ数値だけの平均
AVERAGEIF条件付き平均スキップ条件に合うデータの平均
AVERAGEIFS複数条件付き平均スキップ複数条件を組み合わせた平均
MEDIAN中央値スキップ外れ値の影響を受けにくい代表値

条件付きで平均を出したい場合は、AVERAGEIF関数AVERAGEIFS関数を使いましょう。

Excelとの違い

AVERAGEA関数はExcelとGoogleスプレッドシートでほぼ同じ動作です。

項目ExcelGoogleスプレッドシート
構文=AVERAGEA(値1, …)=AVERAGEA(値1, …)
文字列の扱い0として計算0として計算
TRUEの扱い1として計算1として計算
FALSEの扱い0として計算0として計算
空白セルスキップスキップ
引数上限最大255個最大30個

引数の上限数が異なりますが、セル範囲を使えば問題ありません。Excelと同じ感覚で使えますよ。

まとめ

AVERAGEA関数は、文字列やTRUE/FALSEを含むデータの平均を求める関数です。

ポイントを整理します。

  • 構文は =AVERAGEA(値1, [値2], ...) で全データ型を含む平均を返す
  • 文字列は0、TRUEは1、FALSEは0として計算に含める
  • 空白セルはスキップされる(AVERAGE関数と同じ)
  • 数値だけの範囲ではAVERAGE関数と同じ結果になる
  • 実務では「文字列を0として含める意図」が明確なときだけ使う
  • 通常の平均はAVERAGE関数がおすすめ

まずは =AVERAGEA(範囲)=AVERAGE(範囲) を並べて、結果の違いを確認してみてください。


この記事で紹介した関数・関連記事

タイトルとURLをコピーしました