Excel。アレレ!関数でセル参照に比較演算子を付けた条件で算出してくれない
<AVERAGE&COUNTIF関数>
まずは、次の表をご覧ください。
A列に営業日があって、B列はその金額。売上高ですね。
その平均が、E1に算出されている表です。
E1の数式は、
=AVERAGE(B2:B7)
単純な平均値を算出しているだけです。そして、やりたいことは、E3にある、
金額が平均以上の日数が何日あるのか?というのを求めた表になっています。
別になんら問題はない表なのですが、
平均以上とか、以上・以下などを表現するのに、
比較演算子というのを使いますよね。
>=とか<=とか。
その比較演算子を使った条件を関数で使うと、
どうもうまく算出してくれないので困っているという声を耳にします。
実の所、悩んでしまう代表的なケースなのです。
では、一つずつ確認しておきましょう。
日数。
つまり個数を数えますので、今回登場するのは、COUNTIF関数ですね。
E3は、
COUNTIF関数の検索条件に直接E1で算出した数値を入力した場合を
確認してみましょう。
E3にCOUNTIF関数ダイアログボックスを表示しましょう
範囲には、B2:B7
検索条件には、>=324.5と入力して確定したら、">=324.5"
と入力されているのを確認したらOKボタンをクリックしましょう。
3件と算出されましたね。
これは、問題ないのですが、次はケースはどうでしょうか?
E4は、検索条件には、平均値が算出されているE1を使ってみます。
E4をクリックして、COUNTIF関数ダイアログボックスを表示します。
範囲には、B2:B7
検索条件には、>=E1と入力して確定したら、">=E1"
と入力されましたね。
これでOKボタンをクリックすると、残念ながら0になってしまします。
なぜこうなってしまったのかというと、
検索条件などを関数で使用する時に比較演算子を使うのですが、
セル番地や数式と合わせて使うときには、&で結合してあげる必要があるのです。
つまり">=E1"という文字列を検索してしまうのです。
だから検索対象が見つからないので、0と算出してしまったのです。
そこで、次のように修正してみましょう。
範囲には、B2:B7
検索条件には、">="&E1 と入力しましょう。
そして、OKボタンをクリックしてみると、今度は3と算出されてましたね。
E4の数式は、
=COUNTIF(B2:B7,">="&E1)
E5のケースは、セル参照だけではなくて、
数式でも同じように&で結合させないと文字として認識してしまい、
結果を求めることができません。念のために確認しておきます。
範囲には、B2:B7
検索条件には、">="&AVERAGE(B2:B7) と入力しましょう。
そして、OKボタンをクリックしてみると、今回も3と算出されましたね。
このように、セル番地や数式を比較演算子といっしょに検索条件で使う場合には、
比較演算子は””(ダブルコーテーション)で囲み、&で結合する
ということを覚えておくと、算出できるようになりますよ。