• ベストアンサー

Excelで順位をつけたい

 お世話になります。よろしくお願いいたします。    エクセルでの順位の付け方です。  例えば、  国語、数学の2教科のテストの結果で順位をつけるとします。     列A  列B   列C   列D 行1      国語   数学  合計点 行2  A君  40    60   100 行3  B君  50    50   100 行4  C君  60    40   100  上記のような結果の時に普通に「RANK」を使うと、3人全員が「一位」になりますが、  合計点が同じ場合は、国語の点数が良い者から、「一位・二位・三位」になるようにしたいのです。  したがって、C君が「一位」・B君が「二位」・A君が「三位」になるようにするには、 どのようにすればよろしいですか?お教えください。

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

  • ベストアンサー
  • tomo0524
  • ベストアンサー率43% (13/30)
回答No.6

ごめんなさい ミスがありました No5さんのように =value(text(D2,"000",)&text(B2,"000")) としなければ、点数によっては順位が狂ってしまいます。 よろしくお願いします

その他の回答 (6)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.7

E列のE1に=D1+B1*0.01を入れ、下に複写する。 F列のF1に=RANK(E1,$E$1:$E$4)を入れ、下に複写する。 考え方は#4のご回答と似ていますが、B列だけを、D列の下位に位置付けるため、B列の点数が1.0の位に出てこないように、1/100=0.01を掛けて、D列に足しています。

  • comv
  • ベストアンサー率52% (322/612)
回答No.5

こんにちは 各教科点数及び合計点が最大3桁の場合     列A  列B   列C   列D   列E 行1      国語   数学  合計点 行2  A君  40    60   100  式 行3  B君  50    50   100  ↓ 行4  C君  60    40   100  ↓ セルE2(空き列)に式  =(D2&TEXT(B2,"000")&TEXT(C2,"000"))*1 とすればRANKの比較値が  1004060  1005050  1006040 となります。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.4

こんにちは。maruru01です。 かなり小手先の方法です。 まず、D列の合計でA君のところ(D2)に、 「=B2+C2」 と入っていると思いますが、これを、 「=B2*1.001+C2」 に変更します。B君、C君も同様です。(コピーすればいいでしょう。) こうすると、合計が、 「100.04」 となると思いますので、セルの書式設定の表示形式で、「数値」、「小数点以下の桁数0」にします。 これで、表示上は、 「100」 になったと思います。 これで、例えばE列を順位とすると、E2に、 「=RANK(D2,$D$2:$D$4)」 として、コピーすれば、希望通りになると思います。 つまり、国語の点にちょっとだけ重みをつけるわけです。

takmiktami28
質問者

お礼

 なるほど。こういう方法もあるのですね。  物事を考えるときに、ちょっと違う角度から考えてみるということが大切ですね。  お世話になりました。ありがとうございました。

  • tomo0524
  • ベストアンサー率43% (13/30)
回答No.3

例えばE列に作業用セルをつくって、 =value(D2&B2)として、 E列の順位を求めるのはどうでしょうか? 作業用セルは目立たないところに入力するか、 E列の数字を見せたくない場合は、セルの書式設定をユーザー設定で;(半角で)にすると表示されません

takmiktami28
質問者

お礼

 出来ました!!ありがとうございました。  『VALUE』という関数を初めて使いました。  賢くなりました。  あと、『;(半角で)』  にすると表示されなくなるのですね。これも初めて使いました。  (何故、表示されなくなるのか、全く理解できませんが・・・便利そうですね。)  いろいろな新しい技を伝授していただきありがとうございました。  

  • tomtop
  • ベストアンサー率46% (29/62)
回答No.2

全てのセルをクリック→ データ→並べ替え→ データーにチェック→ 最優先されるキー「列D」、2番目に優先されるキー「列B」、3番目に優先されるキー「列C」→ OKで出来ます。

takmiktami28
質問者

お礼

 早々の回答ありがとうございます。  誠に申し訳ございませんが、  #1さんに回答したとおり、私の説明不足でした。  お手数をお掛けしました。

  • gramin
  • ベストアンサー率36% (51/138)
回答No.1

「データ」→「並べ替え」で、最優先されるキーに「列D」、2番目のキーに「列B」でソートして連番をつけたのではいかがでしょう。

takmiktami28
質問者

お礼

 早々の回答ありがとうございます。  折角、回答をいただいたのですが、  私の説明不足でした。  並び替え(ソート)を使わずに出来ないものでしょうか?

関連するQ&A