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

   A  B  C  D  E
1  A  6  5  2  3 
2  B  3  4  1  1
3  C  9  5  3  5
4  D  6  4  2  1
5  D  0  4  0  -4
A列、チ-ム名
B列、勝点
C列試合数
D列、勝数
E列、得失点差
このようなシ-トがある場合、別のセルに1位~5位までの順位付けする関数を教えてください。
尚、勝点が同点場合は得失点差を考慮します。

A 回答 (3件)

こんにちは~♪



こんな表の場合です。。。

    A     B    C    D    E     F
[1] チーム名 勝点 試合数  勝敗 得失点差  順位
[2]   A     6   5     2    3     2
[3]   B     3   4     1    1     4
[4]   C     9   5     3    5     1
[5]   D     6   4     2    1     3
[6]   D     0   4     0    -4    5

F2セルへ
=SUMPRODUCT((($B$2:$B$6+$E$2:$E$6/1000)>B2+E2/1000)*1)+1
下へコピー。。。

ご参考にどうぞ。。。

。。MS.Rin~♪♪
    • good
    • 0
この回答へのお礼

返事が遅れました。

教えてもらった関数とvlookup関数と組み合わせでできました。
ありがとうございました。

今後ともよろしくお願いします。

お礼日時:2008/06/10 09:03

作業列使います


F1セルに =D1*100+E1  得失点差 最大(100までとして)
(或いは =D1+E1/100) 下フィル
G1セルには =RANK(F1,F$1:F$5) 下フィルで如何でしょうか。
    • good
    • 0
この回答へのお礼

返事が遅れました。
参考にしてみます。

お礼日時:2008/06/10 09:01

残念ながら、一発で順位付けができる関数はありません。


自分も同じようなシートを作成しましたが、そこには
LARGE, VLOOKUP, IF などをふんだんに使いまくり、
とても横長のシートが出来上がりました。
(あまりに見づらいので別のシートで計算をさせて、
 順位を表すシートに反映させています。)
あと、ヒントとしては、勝ち点、得失点差、の順に優先させてチェックしなければいけないわけですが、
例えば勝ち点には100をかけ、それに得失点差を足す、ということをすると、上の例なら
A 603ポイント
B 301ポイント
C 905ポイント
D 601ポイント
E -4ポイント
となり、C, A, D, B, E という順位をはじき出すことができます。
これをLARGE関数で大きい順にソートし、VLOOLUP関数でポイントとチーム名と一致させます。
あとは元の表を並べ替えるために、チーム名とそれぞれの値をVLOOKUP関数で一致させます。
これ以上は長くなるので、まずはやってみてください。
    • good
    • 0
この回答へのお礼

返事が遅れました。
参考にしてみます。

お礼日時:2008/06/10 09:01

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