プロが教える店舗&オフィスのセキュリティ対策術

エクセルでとある年代毎に得点平均を小数点第一まで求められる関数はどういったものがありますでしょうか。
例)40歳以下の得点の平均
 A(名前) B(歳) C(点)
1佐藤20  60
2鈴木2545
3加藤4590
4佐々木8062
5井上5465
6吉田4170
7岡田4920
8高橋3751
9清水3388
10 田中2663

使用環境はoffice2007と2003です。

A 回答 (2件)

No.1です!


たびたびごめんなさい。
投稿後に気になったコトがあります。

>年代毎に得点平均を・・・

とあるのでもしかした10代・20代・・・とそれぞれの平均を出したいのかな?って思いました。

もしそうであるならば、↓の画像で
F2セルに
=IF(SUMPRODUCT(($B$1:$B$100>=ROW(A1)*10)*($B$1:$B$100<ROW(A2)*10)),ROUND((SUMPRODUCT(($B$1:$B$100>=ROW(A1)*10)*($B$1:$B$100<ROW(A2)*10),$C$1:$C$100))/SUMPRODUCT(($B$1:$B$100>=ROW(A1)*10)*($B$1:$B$100<ROW(A2)*10)),1),"")
という数式を入れオートフィルで下へコピーしています。

こんな感じをお望みだったのでしょうか?

外していたらごめんなさいね。m(_ _)m
「エクセルで年代別の平均点の求め方について」の回答画像2
    • good
    • 0
この回答へのお礼

ズバリです。 
分かりづらい質問なのに、分かりやすいご回答いただきありがとうございます。
 

お礼日時:2012/04/27 08:49

こんばんは!


手元にExcel2007がないので、Excel2003での一例です。

1行目はタイトル行でデータは2行目~11行目にあるとすると、
質問のデータの場合は、表示したいセルに
=ROUND(AVERAGE(IF(B2:B11<=40,C2:C11)),1)
これは配列数式になりますので、Shift+Ctrl+Enterキーで確定してください。

※ 空白セルは範囲指定しないでください。もし空白セルを範囲指定するとそのセルの点は「0」と判断されます。

配列数式を使用しない方法としては
=ROUND(SUMIF(B:B,"<=40",C:C)/COUNTIF(B:B,"<=40"),1)
(この数式の場合は見てのとおり、空白セルを範囲指定してもOKです。)
としても同様の結果が得られると思います。

尚、Excel2007以降ではAVERAGEIFS関数が使用できるかと思います。

参考になりますかね?m(_ _)m
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!