• ベストアンサー

エクセルで複数条件における平均

列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 宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.3

チョッと長くなりましたが作ってみました。  =SUM(IF(A1:A6=1,B1:B6,0))/SUM(IF(ISBLANK(B1:B6),0,IF(A1:A6=1,1,0))) 分子、分母を別々に配列数式で作っていっしょにしてみました。 ctrl+shiftでEnterとして登録します。

katachin
質問者

お礼

出来ました。 関数をぜんぜん使いこなせてない自分が・・・てかんじです。 ありがとうございました。

その他の回答 (2)

  • telescope
  • ベストアンサー率54% (1069/1958)
回答No.2

=AVERAGEA(IF(A1:A6=1,B1:B6)) と入力してshift+ctrlを押しながらEnterキーを押します(配列数式) {=AVERAGEA(IF(A1:A6=1,B1:B6))} 通常、AVERAGE関数では、空白セルは無視されますが、この場合、空白セルも計算の対象になってしまいます。 回避方法はわかりません。すみません。

katachin
質問者

お礼

早速の回答ありがとうございました。 どうにか回避したいです・・・。

  • taku12
  • ベストアンサー率41% (14/34)
回答No.1

条件に一致するセルの合計を求めるSUMIF関数と、条件に一致するセルの個数を求めるCOUNTIF関数を使ったらどうでしょう? 質問の例では、 =SUMIF(A1:A6,1,B1:B6)/COUNTIF(A1:A6,1) で求められると思います。 もっと簡単な方法があるのかもしれませんが…

katachin
質問者

補足

ありがとうございます。 =SUMIF(A1:A6,1,B1:B6)/COUNTIF(A1:A6,1) の場合、COUNTIFがブランク入っていないところも 数えてしまいます。 うまく説明できないのですが、列Aが1である 列Bのブランク以外の平均を求めたいのですが。 もし、よろしかったら教えてください。

関連するQ&A