• ベストアンサー

特定条件の平均値を出す関数

こんにちは いつもお世話になっています。  エクセル2003で特定条件の平均値を出す関数を教えてください。     A     B 1   名前   得点 2   新井   80 3   伊藤   70 4   上田   100 5   江藤   90 得点の上位3名の平均を出す関数を教えてください。 「ソートしてから範囲選択して平均を出す」のを省いて、一つの関数の中で上位3人の得点を取得して(100点が4人いたら4人分になりますが)平均を出したいのです。 よろしくお願いします。

  • 5goma
  • お礼率82% (265/321)

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

  • ベストアンサー
  • sige1701
  • ベストアンサー率28% (74/260)
回答No.3

三名未満を考慮していません >(100点が4人いたら4人分になりますが)平均を出したいのです。 =SUMIF(B2:B35,">="&LARGE(B2:B35,3))/COUNTIF(B2:B35,">="&LARGE(B2:B35,3)) 得点の上位3名 =SUM(LARGE(B2:B5,{1,2,3}))/3

5goma
質問者

お礼

sige1701 様 ありがとうございました。 お蔭様で解決しました。 =SUM(LARGE(B2:B5,{1,2,3}))/3 は考えなかったですが、平均にも色々あることを教えていただき助かりました。 簡単で恐縮ですが、お礼申し上げます。

その他の回答 (2)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

一例です。 通常入力でOKです。 点数欄がB2からB35の例ですが、適当に修正してください。 =SUMPRODUCT((B2:B35>=LARGE(B2:B35,3))*B2:B35)/SUMPRODUCT((B2:B35>=LARGE(B2:B35,3))*1)

5goma
質問者

お礼

merlionXX 様 ありがとうございました。 お蔭様で解決しました。 大変勉強になりました。 大切に使わせていただきます。 簡単で恐縮ですが、お礼申し上げます。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

一例です。 上位3名限定です。(100点が4名いても3名では?) =AVERAGE((LARGE(B2:B5,ROW(A1:A3))))として入力完了時にshift+ctrl+enterキーを同時押下して下さい。

5goma
質問者

お礼

mu2011 様 ありがとうございました。 お蔭様で解決しました。 配列数式の宣言を勉強させていただきました。 大切に使わせていただきます。 簡単で恐縮ですが、お礼申し上げます。

関連するQ&A

  • 条件を付けて組み合わせを絞って平均を出す関数は?

    ABCに123を当てはめるとAから123、132、213、231、312、321で平均Aから2、2、2です。 A<Bという条件を付けるとAから123、132、231で平均Aから(1、33)、(2、67)、2です。 さらにA<Cという条件を付けると123、132で平均Aから1、(2、5)、(2、5)です。 さらにB<Cという条件を付けると123だけとなり平均はAから1、2、3です。 このように大小の条件を付けて成り立つ組み合わせを絞り込み、平均だけを出したいのですがこんな事が可能なエクセル関数はないでしょうか?今回は説明のためにABCだけでしたが実際はAからPに1から16を当てはめたいです。

  • [関数] 行列でそれぞれ条件を指定し平均を算出する

    こちらの識者の方々にはいつもお世話になっています。 関数の質問です。 タイトルが分かりづらくて申し訳ありませんが、詳細は下記ご参照ください。 環境は下記になります。 OS=windows7 pro 64bit Office=Excel2010(14.0.7128.5000) ■やりたいこと 下図のA1:H9のようなリストがあり、下記条件でB2:C9の範囲の平均を出したいのです。 ・A列が0以外 ・1行目が0以外 ・作業列(行)は作らない ・関数で実現する excel2007から追加されたAVERAGEIFS関数が使えるかと思ったのですが、平均対象範囲は単列(もしくは単行)しか指定できないようです。 この場合、どのような関数が適していますでしょうか? 質問に不備不足等ございましたらご指摘ください。 ご面倒お掛けしますがよろしくお願いします。

  • 特定の関数が含まれるセルを塗潰したい

    特定の関数が含まれるセルを塗潰したい エクセルである特定の関数(たとえばSUM)が含まれるセルを 塗潰したい場合、どのような式なら可能でしょうか。 出来れば条件付き書式だと嬉しいです。 よろしく御願いします。

  • 関数の組み方を教えてください

    検索してもなかなかみつからなかったので教えてください。 1チーム6~8人でそれが5チームあります。 それぞれのチームの中で得点上位者を3人ずつをぬき出し、その3人の得点の合計が多いチームから順位づけしたいと思っています。 アクセスが不慣れなためできればエクセルの関数でやりたいのですが、どうネストさせていけばいいかよくわかりません。 ぜひとも宜しくお願いします。

  • 条件を付けて平均を求めたい!(Excel)

    列   A      B         C    商品名    ランク       金額    1みかん    A        1000 行 2みかん    C         300    3みかん    B         600    4みかん    C            5             合計 1900    6             平均A    7             平均B    8             平均C 説明をする為に適当に作ったので、何故こんな物の平均を?と思うかもしれませんが、そこはあまり気にせずご回答頂ければ幸いです。 例えば、こんな表があったとします。(勿論、データ量はもっと沢山。。。) 各ランクごとの平均を求めたいのですが、どんな関数を使い、どんな範囲選択をすれば宜しいのでしょうか?  条件を付けAVERAGEで求めれば良いことはなんとなく分かるのですが・・・ 範囲の設定や数式の順番が全然分かりません。 よろしくお願いします。 ※金額欄(C列)・・・ 実際に未入力のセルがあるので、未入力のセルを0(ゼロ)として考えてくれる数式をお願いします

  • 平均

    エクセル2000 で平均を出しています。 アベレッジ関数で出しましたが, 1,2,3,0という4つの数の平均を出すとき 0は含まないで計算させたいときはどうしたらいいでしょうか? コントロールで1,2,3を選択してというやり方はわかりますが, その0が1,2,0.3という並び方もあるんです。 オートフィルで関数をコピーしたいので, 0がある場合は0を省きそのほかを平均するという関数の入れ方を教えてください。

  • Excel_条件に合う範囲の平均値の求め方

    Excel関数についての質問です。 以下のようなデータが合った場合、条件に合う範囲のデータのみ 抜き出して平均値を求める方法を教えてください。 ■やりたいこと マイナスが続いている範囲を見つけ出し、マイナスが続いている 範囲のみの平均を算出する。 以下で言うとB4~B7の平均を自動で計算してくれる 関数を考えています。 A列:時間が入っていますが、これ自体も他の値を時間に換算したもの。 (式が入っています。) B列:データが入っており、プラスの領域とマイナスの領域を交互に繰り返す。    A  B 1 Time DATA 2  0   0.05 3  6   0.04 4  8   -0.02 5  11  -0.01 6  15  -0.03 7  17  -0.05 8  21  0.05 9  24  0.06 10  27  -0.03 ・・・(以下プラスとマイナスが交互に続きます。) DABERAGEなどの様に、条件に合うセルの平均ではなく、 ある範囲のセルの平均を出したいと思いますが 中々良い案がありません。 よろしくお願いします。

  • Excelのフィルタについて

    いつもお世話になっております。 下記の様なExcelの表があります。     A   B   C   1 名前  注文品  2     りんご  3 青木     4   5     メロン  6 伊藤  7  8     りんご  9 上田 10 11     みかん 12 江藤 13 青木はりんご、伊藤はメロン、上田はりんご、江藤はみかんをそれぞれ注文します。 それぞれの人で3段づつ使用した表になっていますが、名前の段と注文品を入力する段が違っています。 この状態で注文品のところにフィルタをかけて「りんご」を選択すると     A   B   C  1 名前  注文品  2     りんご  8     りんご となります。これだと「りんご」は選択されるのですが、名前が出てきません。名前は3行目と9行目に入力してあるので出てこないのは当然なのですが、出てくるようにする方法は何かありませんでしょうか。 もし何か方法があれば教えて下さい。  

  • エクセル 特定の条件で特定の数字への切り上げ

    エクセルの切り上げで困っており、どなたか解決方法をご存知であれば教えていただきたいです。 色々と数字がある中で、十の位が特定の条件の時に特定の整数に切り上げる関数式を知りたいです。 たとえば、 1230.35⇒1249 1252⇒1299 など、十の位までが0~49以下の場合は「49」へ、49~99の場合は「99」へ切り上げるというものです。 単独条件であればCEILINGで式をつくれましたが複数だと複雑になります。 (10の位までを抽出して判断) シンプルな関数でこれを実現する方法はないでしょうか? 皆様の知恵をお貸しください。 よろしくお願いいたします。

  • エクセルで特定の範囲の文字列を抜き出したいのですが関数がわかりません。

    エクセルで特定の範囲の文字列を抜き出したいのですが関数がわかりません。 抽出の条件は「セルの中の【 】でくくられた部分」(【】も含む)です。 各セル内の文字列はすべてこの【】から始まる文章で構成されているのですが、 【】内の文字数はそれぞれ違うという状態です。 文字数が固定の場合の関数は思いつくのですが、異なる場合がよくわかりません。 よろしくお願いします。

専門家に質問してみよう