- ベストアンサー
エクセルで複数条件における平均
列Aに1~5が入り、列Bに値が入っているとします。 Aが1であるBの平均を1つの式で出したいのですが。 (配列数式が関係あるのですか?) 【例】 A B 1 2.5 1 2.0 1 4 1.0 3 1.5 1 0.0 宜しくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
チョッと長くなりましたが作ってみました。 =SUM(IF(A1:A6=1,B1:B6,0))/SUM(IF(ISBLANK(B1:B6),0,IF(A1:A6=1,1,0))) 分子、分母を別々に配列数式で作っていっしょにしてみました。 ctrl+shiftでEnterとして登録します。
その他の回答 (2)
- telescope
- ベストアンサー率54% (1069/1958)
=AVERAGEA(IF(A1:A6=1,B1:B6)) と入力してshift+ctrlを押しながらEnterキーを押します(配列数式) {=AVERAGEA(IF(A1:A6=1,B1:B6))} 通常、AVERAGE関数では、空白セルは無視されますが、この場合、空白セルも計算の対象になってしまいます。 回避方法はわかりません。すみません。
お礼
早速の回答ありがとうございました。 どうにか回避したいです・・・。
- taku12
- ベストアンサー率41% (14/34)
条件に一致するセルの合計を求めるSUMIF関数と、条件に一致するセルの個数を求めるCOUNTIF関数を使ったらどうでしょう? 質問の例では、 =SUMIF(A1:A6,1,B1:B6)/COUNTIF(A1:A6,1) で求められると思います。 もっと簡単な方法があるのかもしれませんが…
補足
ありがとうございます。 =SUMIF(A1:A6,1,B1:B6)/COUNTIF(A1:A6,1) の場合、COUNTIFがブランク入っていないところも 数えてしまいます。 うまく説明できないのですが、列Aが1である 列Bのブランク以外の平均を求めたいのですが。 もし、よろしかったら教えてください。
お礼
出来ました。 関数をぜんぜん使いこなせてない自分が・・・てかんじです。 ありがとうございました。