- ベストアンサー
エクセルでサッカーの順意表を作り勝敗数でRANK関数を使用し順位が出る
エクセルでサッカーの順意表を作り勝敗数でRANK関数を使用し順位が出るようにしたのですが、同順位の場合得失点の条件も含めて順位をつけるようにしたいのですがどうしたらよいですか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- KURUMITO
- ベストアンサー率42% (1835/4283)
例えば次のようにしてはどうでしょう。参考にしてください。 仮に5チーム(A,B,C,D,E)で試合をすることにします。 A1セルにはチーム名とでも入力してA2セルから下方にA,B,C,D,Eと入力します。 また、B1セルからF1セルにかけてA,B,C,D,Eと入力します。 AチームがBチームと戦って4対3で勝った場合にはC2セルに4と入力し、B3セルには3と入力します。すなわちAチームが他のチームと戦って得た得点は2行目に入力し、Bチームが他のチームと戦って得た得点は3行目に入力するといった具合です。 A1セルからF6セルに入力された点数を元に勝った場合の重みとか負けた場合の重みさらには得点差を考慮して得点表をH1セルからM6セルにかけて表示させることにします。 H1セルにはチーム名と入力してH2セルからH6セルにはA,B,C・・と入力します。また、I1セルからM1セルにかけても同様にチーム名を入力します。 I2セルには次の式を入力してM2セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(INDEX($A:$F,ROW(B2),COLUMN(B2))=0,"",IF(INDEX($A:$F,ROW(B2),COLUMN(B2))>INDEX($A:$F,COLUMN(B2),ROW(B2)),3+(INDEX($A:$F,ROW(B2),COLUMN(B2))-INDEX($A:$F,COLUMN(B2),ROW(B2)))/100,IF(INDEX($A:$F,ROW(B2),COLUMN(B2))=INDEX($A:$F,COLUMN(B2),ROW(B2)),1,(INDEX($A:$F,ROW(B2),COLUMN(B2))-INDEX($A:$F,COLUMN(B2),ROW(B2)))/100))) この式では勝った場合には得点3と、それに勝った時の得点差の100分の1が加算されるようになっています。また、引分のときは得点は1としています。 負けた場合には得点差の100分の1がマイナスの表示になるようにしています。 これらの条件は適宜変更してください。 次にN1セルには得点とでも入力し、N2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(COUNT(I2:M2)=0,"",SUM(I2:M2)) 最後に順位ですがO1セルには順位とでも入力し、O2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(N2="","",RANK(N2,N:N)) これまで述べてきたことをぜひ試験されて、参考になりましたら幸いです。
お礼
ありがとうございました
- nattocurry
- ベストアンサー率31% (587/1853)
サッカーにあまり詳しくないのでよく解らないのですが、得失点差ってどれくらいまで大きくなるのもなのでしょうか? とりあえず、勝敗数に、得失点差の千分の一を足して、その値でRANK関数を使うのはどうでしょう?
お礼
ありがとうございました
- KURUMITO
- ベストアンサー率42% (1835/4283)
得点表とはどのようになっているのでしょう。
お礼
ありがとうございました
お礼
ありがとうございました