- ベストアンサー
エクセルのaverage関数について
エクセルである条件を満たすデータの平均値を求めたいと思っております. 例えば,データと条件は以下の場合, データ R 1 R 2 S 3 S 4 T 5 T 6 条件 一列目がRまたはSの場合 averageif関数では,条件は一つしか使えないので,RorSという複数の条件があるときは出来ないと思い,averageifs関数を使って求めようと思ったのですが,うまく計算してくれません. どのように関数で,どのように引数を決めれば良いか教えてください.
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
一般の関数だけでやるなら、要するに =(AがRのB列計+AがSのB列計)/(Rの個数+Sの個数) で計算できます。 つまり: =(SUMIF(A:A,"R",B:B)+SUMIF(A:A,"S",B:B))/(COUNTIF(A:A,"R")+COUNTIF(A:A,"S")) 配列数式を使うと =SUMPRODUCT(SUMIF(A:A,{"R","S"},B:B))/SUMPRODUCT(COUNTIF(A:A,{"R","S"})) みたいにできますが、あんまり短縮にはならないですね。 AVERAGEIFS関数はAND条件なので、またはの結合は計算できません。
その他の回答 (3)
- tom04
- ベストアンサー率49% (2537/5117)
No.1です! たびたびごめんなさい。 ネットで検索すると AVERAGEIFS関数は 検索条件が「AND」のようですので 検索範囲が同列の場合は無理みたいですね! 前回の最後の部分は無視してください。 何度も礼しました。m(_ _)m
お礼
わざわざ調べていただいたみたいで,ありがとうございます.
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 手元のExcel2003での場合です、 A・B列にデータがあるとして =SUM(SUMIF(A:A,"R",B:B),SUMIF(A:A,"S",B:B))/SUM(COUNTIF(A:A,"R"),COUNTIF(A:A,"S")) といった感じで可能だと思います。 Excel2007以降では AVERAGEIFS関数が使用できないでしょうか? (手元にないので検証できません) 参考になりますかね?m(_ _)m
お礼
ご回答ありがとうございます. SUM,SUMIF関数を使った方法を試してみます.
お礼
回答ありがとうございます. やはりaverageifsは使えないみたいですね.