[[20020713154312]] 『総当り戦の順位の出し方』(ドッジボーラーのパパ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『総当り戦の順位の出し方』(ドッジボーラーのパパ)

ドッジボーラーのパパ

*順位の出し方

子供がやっているドッジボールの対戦表(リーグ戦)を作っています。3〜7チームの総当り戦となります。上に”出場チーム名”を入れたら”点数”を入力して”順位”を出したいのです。

以上、2点ご教授いただけないでしょうか。


    A      B       C   D    E     F    G     H     I   J    K    L    M

 1 チーム	得点   チーム 勝	勝点  負点      チーム  勝 勝点 負点	勝率  順位

 2 A	10-2	B    1	10     2	         A     1	22   22	1.50   3

 3 B	2-10	A    0  2    10	         B     1	20   18	1.53   2

 4 A	8-10	C    0  8    10	         C     1	24   28	1.46   4

 5 C	10-8	A    1	10     8	         D     3	23   21	3.52   1

 6 A	4-10	D    0  4   10							

 7 D	10-4	A    1	10     4							

 8 B	10-5	C    1	10     5							

 9 C	5-10	B    0	 5    10							

10 B 8-3 D 0  8 3

11 D 3-8 B 1  3 8

12 C 9-10 D 0  9 10

13 D 10-9 C 1  10 9

 注意することはB2,B4,B6,B8,B10,B12 は【セルの書式設定】【表示形式】「文字列」に設定してから入力すること。		

 2行目と3行目はAチームとBチームの対戦でB2に得点を文字列で10-2と入れるとB3に2-10と自動入力する式

 =IF(B2="","",RIGHT(B2,LEN(B2)-FIND("-",B2))&"-"&LEFT(B2,FIND("-",B2)-1))

この式をB5,B7,B9,B11,B13 にコピーします。

D2に勝負の判定を○×でなく、勝は1、負は0 と判定する式を入力して、下方複写します。

D2の式 =IF(B2="","",IF(LEFT(B2,FIND("-",B2)-1)<RIGHT(B2,LEN(B2)-FIND("-",B2)),1,0))

E2の式 =IF(B2="","",VALUE(LEFT(B2,FIND("-",B2)-1)))

F2の式 =IF(B2="","",VALUE(RIGHT(B2,LEN(B2)-FIND("-",B2))))

I2の式 =SUMIF($A$2:$A$13,$H2,D$2:D$13)

I2の式をI2:K5にコピーします。

L2の式 =I2+J2/(J2+K2)

M2の式 =RANK(L2,$L$2:$L$5)

詳しい説明は省略します。上記の通りにテストとして入力して確かめて下さい。

式入力が面倒であれば、上の式を指定のセルにコピーして、貼り付けてください。

右列に連続データがあれば、式入力後そのセルの右下角の+になるフィルハンドルをダブルクリックして、コピーします。

得点入力が文字列であるため、式が複雑になりましたが、3列に得点を入れれば式は簡単になります。

 出来なければまた連絡して下さい。

 (シニア)


さっそくのご返答ありがとうございます。

説明が足りませんでしたが、10-2と表す場合、入力しやすいように"10,-,2"と、3つのセルにして、"10"と"2"を入力するようにしています。この場合”○”。"2"と"10"を入れた場合"×"。その"○"の多い順で一位から番号を振りたいのでした。

 -  優勝すると、全日本ドッジボール選手権に出場できます。

  - 余談でした。


    A     B  C  D    E   F  G     H    I   J    K    L    M

 1 チーム	勝点 負点 チーム 勝	     チーム  勝 勝点 負点	勝率  順位

 2 A	10 -  2	 B    ○    A     1	22   22	1.50   3

 3 B	 2 - 10	 A    ×    B     1	20   18	1.53   2

 4 A	 8 - 10	 C    ×    C     1	24   28	1.46   4

 5 C	10 -  8	 A    ○    D     3	23   21	3.52   1

 6 A	 4 - 10	 D    ×  				

 7 D	10 -  4	 A    ○						

 8 B	10 -  5	 C    ○						

 9 C	 5 - 10	 B    ×						

10 B 8 - 3  D ×

11 D 3 - 8  B ○

12 C 9 - 10 D ×

13 D 10 - 9 C ○

 2行目と3行目はAチームとBチームの対戦でB2に得点を文字列で10 D2に10と入れるとB3に2 D3に10と自動入力する式

 B3に =D2 D3に =B2 と入力し、B3:D3 を選択しコピーします、B5,B7,B9,B11,B13 に貼り付けます。

F2に勝負の判定を○×で判定する式を =IF(B2>D2,"○","×")入力して、下方複写します。

I2の式  =SUM(IF($A$2:$A$13=H2,IF($F$2:$F$13="○",1,0))) と入力し、Ctrl+Shift+Enterで確定して、

行列数式にします。入力結果は{}で囲まれた式

 {=SUM(IF($A$2:$A$13=H2,IF($F$2:$F$13="○",1,0)))} になります。

この式を下方複写します。

J2の式  =SUMIF($A$2:$A$13,$H2,B$2:B$13) 

K2の式 =SUMIF($A$2:$A$13,$H2,$D$2:$D$13)

L2の式  =I2+J2/(J2+K2) ○の数に勝点/総得点で同順位の重みを加算します。

M2の式  =RANK(L2,$L$2:$L$5) は勝率を基に順位を計算します。

【注意】判定を○×にしたため、SUMIF関数では計算できませんので、行列数式にしました。

入力にEnterを押してしまうと正しい値になりません。【F2】ファンクションキーで編集にして、Ctrl+Shift+Enterで確定して下さい。

本日の全国大会の愛知県予選で優勝して、全日本ドッジボール選手権に出場できますよう祈っています。

 (シニア)


再度、ありがとうございます。

5:30に起こされました。今日は、いい天気です。

私が望んでいる形になると思います。

やってみます。

(ドッジボーラーのパパ)


先日のドッジボールは、56チーム参加の愛知県大会で優勝しました。

8月18日に行われる全国大会(幕張メッセ)の出場権が得られました。

シニヤさん、ありがとうございました。応援しすぎてハスキーボイスになりました。

地元商店街に貼る優勝報告ポスターをプリントしています。

さて、実際に入力してみるとうまくいきません。

=IF(B2>D2,"○","×")の計算がうまくいかないみたいです。

○あるいは×は出るものの結果が正しく表示されません。

",がエクセル上では、”が上にはねた形になっていますが、問題あるのでしょうか。2のシフトしたところを使用していますが?

○が勝ち点=2点、△(引き分け)が勝ち点=1点、×が勝ち点=0点で勝者を決めます。B2=D2の時は△なので、その場合、どんな式にするのでしょうか?


 地区大会優勝おめでとう!!この勢いが商店街の活気になり、全国大会が楽しみですね。

F2の式は =IF(B2>D2,"○",IF(B2=D2,"△","×")) に変更します。

※○×表示はされるが結果が正しく表示されないのは、B列、D列の数字に問題がありませんか?

正しく表示されなかった個所のB列、D列の数字の前に '^" (接頭辞)があれば、文字列です。

文字列は数値より大きい値になります。

B列、D列を選択して【セルの書式設定で】【表示形式】を「標準」に戻して、

再度数値を入力するか、接頭辞を削除すれば良いと思います。

I2の得点は○が勝ち点=2点、△(引き分け)が勝ち点=1点、×が勝ち点=0点の条件の式にします。

 =SUM(IF($A$2:$A$13=H2,IF($F$2:$F$13="○",2,0)))+SUM(IF($A$2:$A$13=H2,IF($F$2:$F$13="△",1,0)))

と入力して、Ctrl+Shift+Enterで確定し行列数式にします。

この式を下方複写すれば勝点が計算されます。

 (シニア)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.