- ベストアンサー
平均点上位5位を抽出
いつもお世話になっております。 シートAに学生CD、名前、性別、国数社理英の点数とその5教科の合計と平均点からなるデータがあり、シートAをソートやランク関数を使わずにシートBに平均点の上位5名のデータを抽出したいのですが、方法がわかりません。ネットや書籍を見ましたが解決策は見つかりませんでした。方法をご存じの方ご教授お願いいたします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
#2の方が既に書いていますが、オートフィルターをかけ、平均点の項目でトップテンを選択し、5位までを指定して、一覧を表示。 5位までを表示した一覧表全体を選択して、コピーして、シートBに貼り付け。その後、シートBを降順で並び替えると、お望みのようになるかと思います。
その他の回答 (3)
- 134
- ベストアンサー率27% (162/600)
ソートも関数もダメ とは、どういう方法をお望みなのか、よく分かりません。 マクロを使って、データを抽出し、列記させる…のが、お望みなのでしょうか。 マクロを使うにしても、セル構成は不明。(というか、マクロを作って欲しいという趣旨なら、丸投げ質問?) もともとエクセルは、データを抽出して並び替えるのは苦手で、アクセスの方が得手といえます。 質問が、今ひとつ不明な部分が多いので、補足が必要ではないかと思います。
お礼
申し訳ありません。 実を申しますと、これは私が受ける情報処理の競技会の練習問題でどうしてもわからいところなので、こちらで質問させていただきました。 134様のいうようなマクロではなくエクセルの問題なのですが、模範解答を見ましても、元データをソートしたり、関数を利用している形式がないので、おそらくフィルターオプションの設定を利用するものと考えております。 お手数をおかけして申し訳ありませんでした。
- kisoyasa
- ベストアンサー率33% (1/3)
はずしていたらすみません。 オートフィルタで、トップテンではだめですか。
- maron--5
- ベストアンサー率36% (321/877)
◆Sheet1 A B C D E F G H I J 1 学生CD 名前 性別 国 数 社 理 英 合計 平均 2 1001 山田 男 65 57 58 69 54 303 60.6 3 1002 岡田 女 74 48 74 78 41 315 63 4 1003 田中 男 85 76 63 54 65 343 68.6 5 1004 藤井 男 52 85 72 72 34 315 63 6 1005 山下 女 34 66 45 67 75 287 57.4 ◆Sheet2 A B C D E F G H I J 1 学生CD 名前 性別 国 数 社 理 英 合計 平均 2 1003 田中 男 85 76 63 54 65 343 68.6 3 1004 藤井 男 52 85 72 72 34 315 63 4 1002 岡田 女 74 48 74 78 41 315 63 ★Sheet2のA2の式 A2=INDEX(Sheet1!A$2:A$6,MATCH(LARGE(Sheet1!$J$2:$J$6+ROW(Sheet1!$J$2:$J$6)*10^-5,ROW(Sheet1!A1)),Sheet1!$J$2:$J$6+ROW(Sheet1!$J$2:$J$6)*10^-5,0)) ★この式は「配列数式」です。式を入力後 Shift+Ctrl を押しながら Enter を押してください ★式が確定すると、式の両端に { }がつきます ★式を確定後、右と下にコピーしてください ◆上位3人にしていますので後は、実際にあわせて変更してください
お礼
回答ありがとうございます。 申し訳ありませんが、関数関係も使用しないで出したいんです。 せっかく回答していただいたのに申し訳ありません。
お礼
回答ありがとうございます。 模範解答を見たら学生CDでソートされていましたので、134さんのおっしゃる通りでした。 確認をさず質問してしまい申し訳ありませんでした。