エクセル関数でMEDIAN(中央値) を使う際に、
0の値を無視して中央値を求めたいって思うことはないですか?
そこで今回は、中央値を条件付きで集計する方法の応用編としまして
0を無視して中央値集計する方法をご紹介いたします
中央値を0を無視して集計したいシチュエーションについて
通常のMEDIAN関数ですと下図のように範囲内の全ての中央を返します

図の場合、10個の値の中央値は0.5となるのですが、
気持ちとしては、3 と返してほしい!
そんな悩みにお答えします!

0を無視して中央値を求める関数について
結論から申しますと、
配列関数とIF関数を使用することで
条件付きで中央値(MEDIAN)を求めることができます
下図の場合、次の関数で計算できます
{=MEDIAN(IF(A2:A11<>0,A2:A11))}

中央値(MEDIAN)を条件付きで使う方法については
下記の記事をご参考ください

今回は、IF条件が、
『0ではない値』 の場合を集計すれば良いです
IF関数で、0でない場合という表記は、
=IF(A<>0,TRUE,FALSE)
となります。
つまり、<>0を使って、
MEDIAN内にIF関数を作ればOKです
かつ、集計範囲全体に対して、
IF判定をする必要があるため、
配列関数を使用しなければなりません
0を無視して中央値を求める関数を解説
{=MEDIAN(IF(A2:A11<>0,A2:A11))}

一見複雑に見える関数ですが、
次のように関数を色分けすることで、
関係性が見えてきます
・中央値(MEDIAN)関数
・IF関数
・配列関数
{=MEDIAN(IF(A2:A11<>0,A2:A11))}
注意すべき点
今回の関数で注意すべきは、次の2点です
1.IF条件は、集計範囲とすること
MEDIAN関数内でIF条件を指定するには、
配列関数を使う必要があります
そのためには、通常のIF関数のようにセルを指定するのではなく、
集計範囲を指定する必要があります
→ A2:A11 部分がソレです
そうすることで、集計範囲内の全てのセルに対して、
値が0であるかを確認し、0ではない値のみを集計してくれます
2.配列関数にすること
配列関数にするには、関数を確定する際に、
通常Enterキーを押すところを、
Shift + Ctrl + Enter キーを押すようにしてください
そうすることで、関数の前後に { } が付与されます
これで、配列関数になります
{=MEDIAN(IF(A2:A11<>0,A2:A11))}
以上で、0を無視して中央値(MEDIAN)を集計する方法となります
![]() | Excel 最強の教科書[完全版]–すぐに使えて、一生役立つ「成果を生み出す」超エクセル仕事術 [ 藤井 直弥 ] 価格:1,738円 |

コメント