エントリー

対戦表

対戦表を作っていきます。

前にも書きましたが、すでにこの表は配布物や掲示物が過去のデータを元に、他の方によって作成されています。
また、過去のデータ自体が、集計より掲示などの印刷をメインに作成されています。
つまり、得点や順位は手書きすることが前提なのです、今回からホームページへの掲載も行うので、大会結果も対戦表の中に入るように変更を行います。

ファイル 246-1.jpg

対戦表の入力ですが、勝点制なので、結果の表示を判りやすいように、勝(○=3)、引分(△=1)、負(×=0)とします。
そして結果の下のセルで、勝点を計算します。(C5セルに対戦結果が入っているとして)
IF(C5="○",3,IF(C5="△",1,IF(C5="×",0,"")))
となりますかね。
ついでですので、この勝ち点によってセルに色分けを表示します。
これは条件付書式を使います。(C6セルに勝ち点が入っているとして)
ファイル 246-2.jpg

対戦結果は、1試合に対して2箇所の入力項目があります。
通常は、入力ミスを軽減するために、片方の対戦結果をリンクして演算で反転させ表示するのですが、今回はVBAを使って入力させるので、どちらも同じ設定にします。
したがって、C5:C6セルを入力を行うセルに一気にコピーします。

次に、得点の合計を出します。
これは単純に、入力された勝ち点をSUM関数で合計するだけです。
ただ、コピーして作ったほうが楽なので、\線が入っている所には、何も数値を入れないことを条件に、B:Eまでを集計します。
=SUM(B6:E6)
となりますかね、これを各チーム毎の合計にコピーします。

さて、ここで同率になった時のじゃんけんが入ってきます。
そうなると、この合計では処理が出来なくなってしまいますので、コピーした合計に手を加えます。
=SUM(B6:E6)*10+B13
勝ち点の合計を10倍して、じゃんけんのポイントを加えます。
本当は、このセルは合計の横にあった方がセルがコピー出来て楽なのですが、以前のものに合わせている関係で、仕方がないでしょう。

次に順位を導き出します。
これは、RANK関数を使います。
=IF(COUNTA(B5:E5)=3,RANK(F5,F5:F12),"")
ちょっと手抜きです、本来でしたら全ての入力済数(今回なら12個)を導き出して、全ての入力が完了してから順位を表示させるべきなんですぅ。

それと、なぜRANK関数の範囲指定が絶対指定ではなくて相対していなんだ?
ってつっこまれそうなんですが、ブロック毎にコピーをするためなんですよ~。
ついでに、ここも順位により色表示を行います。
ファイル 246-3.jpg

後は、出来上がったブロックの演算を全てのブロックにコピーすれば、完成です。

まあ、説明するほどの事でもないんですが、つらつらと書いてみました。(^^)

次回は得点記入用紙の作成です。

ページ移動

トラックバック

  • トラックバックはまだありません。

トラックバックURL

http://furemani.daa.jp/blog/index.php/trackback/246

コメント

  • コメントはまだありません。

コメント登録

  • コメントを入力してください。
登録フォーム
名前
メールアドレス
URL
コメント
閲覧制限

ユーティリティ

新着コメント

Re:2017ふれまにっ杯募集
2017/01/30 from tatsuru3284
Re:ついに
2016/03/18 from redinpules.stt.TV
Re:ついに
2016/03/17 from Tatsuru
Re:ついに
2016/03/17 from redinpules.stt.TV
Re:県オープンの余韻
2016/02/18 from Tatsuru

過去ログ

Feed