【Excel】夏の高校野球甲子園大会の自動集計トーナメント表の作り方

an aerial view of a baseball field with a red ball
Photo by G Visuals on Unsplash

夏といえば高校野球。
息子の中学野球時代の親父たち数人で毎年「夏の甲子園優勝予想会」を催している。
大体いつも集計するのは私の係りだったりする(今年は代わってもらったが)ので、なんとかして集計作業をラクにしたいと考えていた。
と言うことで一念発起、Excelで自動集計できる部分は関数を組んで作ってみた。

優勝予想会のルール

group of people using laptop computer
Photo by Annie Spratt on Unsplash

「優勝予想会」という名前ではあるものの、優勝校だけを予想するわけではない。
・49代表校の中から、1人あたり5校を選出
・1勝すると1ポイント加算
・最終的に5校の合計ポイントを競う
というシンプルなルールだ。

代表校の中には2回戦からスタートする高校が優勝したり、1回戦から頑張って勝ち上がり準優勝という高校もあり。
トーナメントなので優勝することが最高の栄誉ではあるものの、スタートが1回戦からと2回戦からではやはり不公平感がある。
1勝=1ポイントであれば、このあたりが公平に評価される。

5校の合計ポイント数で競うので、優勝校や準優勝校を狙うもよし、ベスト8やベスト4まで行ける高校を狙うもよし。

自動集計トーナメント表とは

group of men playing baseball
Photo by Chris Chow on Unsplash

見た目はトーナメント表そのものである。
甲子園トーナメント表

画面のそれぞれの説明をする。
画面の説明
B列に高校名を入力する。
今回、第105回大会の代表校をサンプルとして入力してある。
C,F,I列には大会日程から何日目の何試合目かを入力してある。
この辺りは手入力で頑張るしかない。

入力例
基本的な運用としては、各対戦の最終点数をD,G,J列に入力すると、自動的に勝ち上がった高校名が次のコマ(B列からE列、H列)に進む(表示される)。
と、同時に、勝ち上がり戦が赤で表示される。
実際の運用では敗戦した高校をグレーで塗りつぶしているが、ここは目視確認も兼ねて手作業で塗りつぶしている。

入力例02入力例03
A列には「勝ち点」を自動集計する。
シート下部で各プレイヤーごとに勝ち点を集計している。
各プレイヤーの選ぶ高校は手入力。

どのような作りになっているか

turned on gray laptop computer
Photo by Luca Bravo on Unsplash

キモとなる部分のExcel関数を示す。

勝ち上がり線を赤くする

関数例04
条件付き書式で罫線の色を変更する

点数を入力すると勝ち上がり戦が赤くなる部分は、条件付き書式でセルの罫線の書式を設定している。
上の図の例で言うと、D4とD5に得点を入力する。
この時のD4とD5の値を比較して、D4が大きい場合、C4セルの罫線の上と右を赤にする、という関数を書いている。
=AND(ISNUMBER($D4), ISNUMBER($D5), $D4>$D5)
ISNUMBER関数を使っているのは数値ではない場合には実行しないようにするためだが、使わなくても別に構わないだろう。
数値以外を入力することはないはずなので。

勝ち上がり校を表示する

関数例05
E列などの勝ち上がった高校名が入るセルには、D列などの得点を入力するセルの値を比較して、大きい場合は上側の高校名(B11)を挿入し、小さい場合は下側の高校名(B13)を挿入する。
そもそも得点の入力がまだされていない場合は何も表示しない(””)、という関数を入れている。
=IF($D12>$D13, $B11, IF($D12<$D13, $B13, ""))

勝ち点を表示する

関数例06
勝ち点はCOUNTIF関数を使う。
高校名が表示されているすべてのセルから、B列の該当する高校名(ここではB13と同じ内容のセル)の数をカウントする。
ただし、1勝=1ポイントなので、このままでは1勝もしていない状態で1ポイントとしてカウントされてしまう。
そこで、B列分の1を差し引き(-1)、A列に表示している。
=COUNTIF($B$3:$K$133,B13)-1


基本的には上記3つの仕掛けができていれば事足りるはずだ。
サンプルファイルはここに置いておくので、ダウンロードして好きなように使っていただいて構わない。
ダウンロード

※なんらかの不具合があっても、当方は一切責任は負わないので自己責任でお願いする。
※関数に間違いがあったらコメントで教えていただきたいが、修正はご自身でお願いする。
※もっといいやり方があるなら教えていただきたい。有用ならば本稿に追記したい。


コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください