• ベストアンサー

エクセル2007の表で自動的に点数の大きい順に並び替える表を作りたいの

エクセル2007の表で自動的に点数の大きい順に並び替える表を作りたいのです。 初期の状態 No. 教科 第一位 第二位 第三位 001 英語 90点 70点 空白 002 数学 80点 70点 60点 003 国語 90点 80点 50点 英語で80点を取ったとして空白の所に80と入力して、自動的に大きい順に並び変えるにはどうしたらいいでしょうか? データ→並び替えは試してみましたが、上手くいきません お願いします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんにちは! 外していたらごめんなさい。 並び替えというより別列に降順表示になります。 ↓の画像でI2セルに =IF(COUNT($C2:$E2)<COLUMN(A1),"",LARGE($C2:$E2,COLUMN(A1))) という数式を入れ、列方向と行方向にオートフィルでコピーします。 元データの空白部分に適当な数値を入力すると 左から降順に数値が表示されます。 以上、この程度しか思いつきませんでしたが 他に良い方法があれば読み流してくださいね。m(__)m

その他の回答 (2)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

No1の回答では、ご質問の内容に沿って並べ替えの方法を提示しましたが、実際のデータベース処理なら上記のような操作は非効率のように思います。 たとえば、科目ごとの点数一覧表のようなものがあれば、その一覧表から自動的に上記のリストを作成することができます。 元データがどのようなレイアウトで入力されていて、どのような集計結果がほしいのかを例示されたほうが、より効率的な回答が寄せられると思います。 ちなみに、例示された一覧表が入力シート(右方向に順次データを追加していく)ということなら、別の範囲にLARGE関数で上記の点数の大きい順に並べ替えた表を簡単に表示させることができます。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

特定行だけの列方向への並べ替えを行うには以下のような操作をします。 2行目の90(点)から空白セルまでの並べ替えたい範囲を選択し、「データ」「並べ替え」で「現在選択されている範囲を並べ替える」にチェックを入れ「並べ替え」をクリックし「オプション」ボタンから方向を「列単位」にして、最優先されるキー「2行」に、順序を「降順」にしてOKして下さい。

関連するQ&A