この記事は 事務でよく使うExcel関数まとめ|目的から探せる一覧 の1本です。他の関数もまとめて見られます。
「A社の平均単価はいくらか」「9月の1件あたりの平均金額は」。
合計や件数は出せても、平均になると急に自信がなくなるという声をよく聞きます。理由は関数の書き方ではなく、何を分母に入れるかが曖昧なまま計算してしまうことにあります。
この記事で扱う AVERAGEIFS(アベレージイフズ) は、書き方自体は SUMIFS とほとんど同じです。気をつけるのは「0」と「空欄」の扱いだけです。
この記事で使うデータ
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 日付 | 取引先 | 商品 | 単価 |
| 2 | 2026-09-01 | A社 | 杉板 | 1,200 |
| 3 | 2026-09-03 | B社 | 檜柱 | 3,800 |
| 4 | 2026-09-05 | A社 | 合板 | 900 |
| 5 | 2026-09-08 | A社 | 見本 | 0 |
| 6 | 2026-09-12 | A社 | 杉板 | 1,500 |
| 7 | 2026-09-15 | B社 | 合板 |
実務のデータには、こういう行が必ず混ざります。ここが平均を狂わせます。
AVERAGEIFSの形
- 平均する範囲平均したい数字が入っている列。ここでは単価のD列
- 条件の範囲11つ目の条件を探しに行く列。ここでは取引先のB列
- 条件1探す中身。文字は "A社" のようにダブルクォートで囲む
- 条件の範囲22つ目の条件を探しに行く列。日付で絞るならA列
最初に「平均したい列」、そのあとは「どこを見て」「何を探すか」の2つ1組。SUMIFSとまったく同じ並びです。
SUMIFS・COUNTIFS・AVERAGEIFS は同じ形です
・合計したい → SUMIFS
・数えたい → COUNTIFS(数えるだけなので、最初の1つがない)
・平均したい → AVERAGEIFS
どれか1つ書ければ、残りは関数名を変えるだけで書けます。
STEP1:条件1つで平均を出す
「A社の平均単価」を出します。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 日付 | 取引先 | 商品 | 単価 |
| 2 | 2026-09-01 | A社 | 杉板 | 1,200 |
| 3 | 2026-09-03 | B社 | 檜柱 | 3,800 |
| 4 | 2026-09-05 | A社 | 合板 | 900 |
| 5 | 2026-09-08 | A社 | 見本 | 0 |
| 6 | 2026-09-12 | A社 | 杉板 | 1,500 |
| 7 | 2026-09-15 | B社 | 合板 |
結果は 900 です。
ここで一度立ち止まってください。A社の平均単価は、本当に900円でしょうか。
落とし穴:0は分母に入り、空欄は入らない
Excelの平均は、次のように動きます。
| セルの中身 | 平均の計算 |
|---|---|
1,200 などの数値 | 対象(分子にも分母にも入る) |
0 | 対象(分子には0が、分母には1件として入る) |
| 空欄 | 対象外(分母にも入らない) |
文字(未定 など) | 対象外 |
つまり、無償の見本出荷(単価0)が1件混ざっただけで、平均が大きく下がります。
| A | B | C | |
|---|---|---|---|
| 1 | 計算のしかた | 対象件数 | 平均単価 |
| 2 | 0を含める | 4 | 900 |
| 3 | 0を除く | 3 | 1,200 |
どちらが正しいという話ではありません。「見本出荷を含めた実質単価」を知りたいのか、「実際に販売した商品の平均単価」を知りたいのか。目的によって変わります。
問題は、この違いを意識せずに数字を出してしまうことです。
STEP2:0を除いて平均する
「実際に売れたものだけの平均」を出すなら、条件を1つ足します。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 日付 | 取引先 | 商品 | 単価 |
| 2 | 2026-09-01 | A社 | 杉板 | 1,200 |
| 3 | 2026-09-03 | B社 | 檜柱 | 3,800 |
| 4 | 2026-09-05 | A社 | 合板 | 900 |
| 5 | 2026-09-08 | A社 | 見本 | 0 |
| 6 | 2026-09-12 | A社 | 杉板 | 1,500 |
| 7 | 2026-09-15 | B社 | 合板 |
"<>0" は 「0ではないもの」 という意味です。平均する列そのものを、条件の範囲にも指定できます。
| 書きたいこと | 書き方 |
|---|---|
| 0を除く | "<>0" |
| 0より大きいものだけ | ">0" |
| 一定額以上だけ | ">=1000" |
STEP3:条件を2つ以上にする
期間を足す場合も、SUMIFSと同じです。
- DD: 平均したい単価の列
- BB , "A社": 取引先でしぼる
- AA , ">=2026/9/1": 9月1日以降
- AA , "<=2026/9/30": 9月30日以前
条件は「かつ」でつながります。全部に当てはまる行だけが平均されます。
#DIV/0! が出たとき
条件に合う行が1件もありません
平均は「合計 ÷ 件数」なので、件数が0だと計算できません。
これはエラーではなく、正常な動作です。
・条件の書き方が間違っている(スペース混入・全半角)
・本当にその条件のデータが無い
まず =COUNTIFS(...) で件数を数えて、0件かどうかを確認してください。
表示を整えたい場合は =IFERROR(AVERAGEIFS(...), "対象なし") のように囲みます。
ただし原因を確認してからにしてください(IFERROR関数の使い方 を参照)。
平均だけを見て判断しない
実務で一番大事なのはここです。
平均は、極端な値1つで簡単に動きます
10件のうち9件が1,000円、1件だけ50,000円だった場合、
平均は5,900円になります。実態を表していません。
平均を出すときは、必ず件数も一緒に出してください。
「平均1,200円(3件)」なら、3件しかないと分かって読み手が判断できます。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 取引先 | 件数 | 平均単価 | 合計 |
| 2 | A社 | 3 | 1,200 | 3,600 |
| 3 | B社 | 1 | 3,800 | 3,800 |
| 4 | C社 | 12 | 980 | 11,760 |
件数・平均・合計の3つを並べる。これだけで、数字の読み違えがほとんどなくなります。件数は COUNTIFS、合計は SUMIFS で、条件の書き方は全部同じです。
よくあるつまずき
平均が思ったより低い/高い
0や空欄の扱いを確認してください。
・0が混ざっている → "<>0" を足す
・空欄がある → もともと分母に入っていません
・数字が文字として入っている → 対象外になり、分母から抜けています
3つ目は見落としやすいところです。セルが左寄せになっていないか確認してください。
「数式が正しくありません」と出る
平均する範囲と条件の範囲で、行数が揃っていません。
D2:D7 に対して B2:B100 のようにズレていないか確認してください。D:D B:B のように列全体を指定すると起きなくなります。
今日やってみること
- 平均を出している表を1つ開く
平均単価、平均作業時間、平均処理件数。どれでも構いません。
- その列に 0 が入っていないか見る
無償対応、キャンセル、見本。0の行があれば、平均に影響しています。
"<>0"を付けた場合と付けない場合を、両方出して見比べる差が大きければ、どちらを使うべきか判断してください。
- 横に件数を並べる
COUNTIFSで件数も出します。これで読み違えがなくなります。
「平均」という数字は、出し方次第でいくらでも変わります。だから、どう出したかを説明できる状態にしておくことが大事です。
次に読むとよい記事
- 条件に合う行を合計する → SUMIFS関数の使い方
- 条件に合う件数を数える → COUNTIFS関数の使い方
#DIV/0!の表示を整える → IFERROR関数の使い方- 範囲を固定してコピーできる式にする → 絶対参照($)の使い方
- 関数の一覧から探す → 事務でよく使うExcel関数まとめ
「出している平均が、実態を表しているか自信がない」という場合、データの中身を見れば判断できます。現状のヒアリングと課題整理は無料です。
この記事について
SUPRAXは、林業・製造・運送の現場経験をもとに、中小企業の業務改善・AI活用・GISの支援を行っています。 記事の内容について「うちの場合はどうか」を聞きたい方は、無料相談をご利用ください。
あわせて読みたい
SUMIFS関数の使い方|条件に合う行だけを合計する
毎月の売上を取引先ごとに集計するとき、フィルタをかけて、選択して、画面右下の合計を見て、電卓で足して……という作業をしていませんか。 この記事で扱う S…
COUNTIFS関数の使い方|条件に合う件数を数える
「未処理が今どれだけ残っているか」を確認するとき、フィルタをかけて、画面右下の件数を見て、またフィルタを外して……という作業をしていませんか。 担当者ご…
TEXT関数と日付の処理|「2026/9/1」を「9月」にまとめる
「月ごとの売上を出してほしい」と言われて、明細表を開く。日付は1日単位で入っているので、そのままでは月でまとめられません。 手で「9月」と打っていくと、…