|
|
グラウンドゴルフはパークゴルフと並んで、私たち中高年にとって欠かせない楽しみの一つです。毎週必ずどこかで大会が開かれ、時には数十人、何百人が参加する大会も行われています。
しかし、大会の成績集計表で順位をつけるのに、大変な苦労がいるようです。上位の順位は比較的楽に出来るようですが、飛び賞の順位を決めるのが大変みたいです。
そこで、パソコンで成績集計表をつくり、エクセルの[並べ替え]機能を使って順位表を作って見ましょう。 |
グラウンドゴルフ成績集計表をつくる手順
1.会員名簿の作成・・・参加者が多い場合は、成績集計表にその都度氏名・生年月日などを入れるのは大変なので、あらかじめ会員名簿を作成しておき、VLOOKUP関数を使って会員NOを打ち込めば、氏名・生年月日などが入るようにしておく。
2.成績集計表を作成して「原本」としておくと、そのシートをコピーして何回でも利用できる。
3.「原本」をコピーした成績集計表に成績を入力する。
4.エクセルの[並べ替え]機能を使って順位を決める。
<ヒント>
※参加人数が少なくて成績集計表に直接氏名・生年月日などを入れるという場合は、会員名簿の作成は省いて、成績集計表の作成での関数も必要ありません。
また、逆に大きな大会で地区別の順位も出したいという方は、一番最後に地区別順位表の作り方を追加しておきますので、参考にしてください。 |
|
|
|
1.会員名簿の作成 |
|
|
|
まず左のような会員名簿を作ります。
@会員NO(2桁または3桁)は会員ごとに決めて前もって会員に知らせておき、スコアカードに記入します。
A氏名を入れます。
B生年月日は半角英数字で入れます。
昭和30年5月10日 なら s30.5.10
すると左の図のようになり、上の「数式バー」に1955/5/10と表示されます。
(順位決定の5番目の要素になる)
C必要に応じ所属を入れます。(地区・所属クラブetc)
Dシートの名前を[Sheet1]から[会員名簿]に変更します。
■シート名の変更
[Sheet1]の上で右クリックして名前の変更をクリック、または[Sheet1]をダブルクリックすると[Sheet1]が黒く反転するので、名前を入力します。 |
|
2.成績集計表(原本)の作成 |
|
|
エクセルの[Sheet2]に下のような成績集計表を作成します。
グラウンドゴルフの順位の決め方は、日本グラウンドゴルフ協会によると以下のようになっています。
- 「個人ゲームの順位は合計打数の少ないプレーヤーを上位とします。同じ場合は、最少打数の多いプレーヤーを上位とします。これも同じ場合は、次の最少打数の多いプレーヤーを上位とします。以下同じ方法によります。それでもまったく同じ場合は、主催者が事前に取り決めておいた方法によります。」
ここでは、実打数が同じ場合はH1、2打、3打の数が多い順に上位とし、それでも同じ場合は生年月日から年齢の高い者を上位とすることにしています。(H1の数と生年月日だけで決める場合は2打・3打は省いても可)
|
|
- A列に「会員NO」を入力するとその「NO」に該当する氏名/生年月日/所属が、自動的に同じ行のB列/C列/D列に表示されるようにするためにVLOOKUP関数を使います。
- ところがVLOOKUP関数が入るとA列の「会員NO」に数字が入ってない状態では、関数を入れたセルに[#N/A]のエラーマークが出るので、これを消すためIFERROR関数を使います。
つまり、IFERROR関数の中にVLOOKUP関数を入れることでエラーマークを消すのです。
- 関数の中に関数を入れることを関数のネスト(入れ子)といいます。少し操作は複雑になりますが、ぜひ挑戦してみてください。
それでは実際に「氏名」「生年月日」「所属」のセルに関数を入れていきましょう。
<関数入力の手順>
@関数を入力したいセル(この場合はB7)をクリックして選ぶ
A関数の挿入ボタン[fx]をクリック、関数の挿入ダイアログボックスが表示されたら、[関数の分類]の▼で[論理]を選択し、IFERRORを選択して、[OK]をクリック
B関数の引数ダイアログボックスで「値」の欄をクリック
C関数ボックスの▼をクリックしてネストしたい関数VLOOKUP選択する
(関数ボックスには、最近使用した10個が一覧で表示されているが、ネストしたい関数がない場合は、その他の関数を選択して、[関数の分類]の▼で[検索/行列]を選択し、VLOOKUPを選択して、[OK]をクリック)
DVLOOKUPの関数の引数ダイアログボックスが出るので
- 検索値の欄をクリックした後、セルA7をクリック(またはA7と入力してもよい)
- 範囲の欄をクリックした後、エクセルページ下のSheet欄のシート名「会員名簿」をクリックすると会員名簿のシートに変わるので、名簿欄のA3からD22をドラッグして選択する。(人数の多い名簿の場合は、当然選択範囲は大きくなる)
そのあとF4キーを押して絶対値とする($マークがつく)→範囲に「会員名簿!$A$3:$D$22」が入る。
- 列番号の欄をクリックした後 2 と入力
- 検索方法の欄をクリックした後 0 と入力
※<注意>ここで[OK]ボタンをクリックしては絶対にダメ!
E上の「数式バー」に出ている関数のIFERRORの部分をクリックするとIFERROR関数の引数ダイアログボックスに戻るので
F関数の引数ダイアログボックスで、「エラーの場合の値」の欄をクリック
GShiftキーを押しながらキーボード上部の数字「2」を2回押して、ダブルクォーテーション「""」を入れる
H[OK]をクリック |
◆B列の氏名欄(セルB7)に=IFERROR(VLOOKUP(A7,会員名簿!$A$3:$D$22,2,0),"")が入りました。
同じようにして
◆C列の生年月日の欄(セルC7)に関数を入力します。(但し上記手順5の中の列番号は 3 を入力する)
=IFERROR(VLOOKUP(A7,会員名簿!$A$3:$D$22,3,0),"")
◆D列の所属欄(セルD7)に関数を入力します。(但し上記手順5の中の列番号は 4 を入力する)
=IFERROR(VLOOKUP(A7,会員名簿!$A$3:$D$22,4,0),"")
◆試しにセルA7に誰かの会員NOを入力してその人の氏名/生年月日/所属が出ればOKです。
セルA7に入れた会員NOの数字をDereteで消すと、氏名/生年月日/所属が消えます。
※以上「関数ボックス」を使って入力する方法を説明してきましたが、もちろん「手入力」できる方はそれでもかまいません。
◆セルB7・C7・D7に入った各関数をオートフィルを使って各列の一番下までコピーします。
<コピーのヒント>
コピーしたいセル(例えば[セルB7])をクリックしてアクティブにした状態で、セルの右下隅にマウスポインタを合わせると、黒十字(+)になります。この状態で下方向にドラッグすると、連続した数値が入力されます。
※各列ごとにコピーするのは面倒くさいという方に
セルB7からD7までドラッグして選んだ状態で[セルD7]の右下隅にマウスポインタを合わせ黒十字(+)で下方向にドラッグすると、各列全てに連続した数値が入力されます。 |
◆完成した[Sheet2]の名前を[原本]に変更します。
ここまで出来れば、Book1に「グラウンドゴルフ成績集計表」などの名前を付けて、一度保存しておくのもいいでしょう。 |
|
|
|
3.[原本]をコピーして成績集計表を作成 |
|
|
1.シート「原本」のコピーを作ります。
■シートのコピー
@コピーしたいシートの名前「原本」の上で右クリック
A[移動またはコピー]をクリック
B[挿入先]でSheet3を選んで、[コピーを作成する]にチェックを入れる(選んだシートの左側、つまり「原本」の右隣にコピーができる)
C[OK]をクリック
シート「原本」の右側にシート「原本(2)」ができる |
2.シート名「原本(2)」を「第1回大会」などの大会名に変更します。
3.スコアカードの提出を受けた会員の会員NOを入力して氏名/生年月日/所属が出れば、その横の欄に実打数・H1・2打・3打の数字を入力していきます。
<入力の際の注意点>
間違って入れた数字をDereteで消す場合がありますが、関数の入っているセル(B/C/D列のセル)は絶対にDereteしないこと。(もし、誤ってDereteすれば関数が消えてしまうので、「元に戻す」か、上のセルをオートフィルでコピーして修復)
4.参加者全員の成績が入力されたら、いよいよエクセルの[並べ替え]機能を使って順位を決めます。
[並べ替え]の手順
集計表の中にあるセル(分かりやすいところでセルA6「会員NO」)をクリックしてアクティブにした状態で、 メニューバー[ホーム]の右端にある[並べ替えとフィルター]をクリックして、[ユーザー設定の並べ替え]を選択します。
[並べ替え]ダイアログボックスが出たら「先頭行をデータの見出しとして使用する」をチェックして、次の手順で並び替えの条件を選択します。
[列]の
@最優先されるキーの▼をクリックして実打数を選択(順位決定要素第1)
A「レベルの追加」をクリック(以下同じ手順)
B次に優先されるキーの▼をクリックしてH1を選択(順位決定要素第2)
C次に優先されるキーの▼をクリックして2打を選択(順位決定要素第3)
D次に優先されるキーの▼をクリックして3打を選択(順位決定要素第4)
E次に優先されるキーの▼をクリックして生年月日を選択(順位決定要素第5)
F[並び替えのキー]が 値 になっていることを確認
G次に優先されるキーがH1・2打・3打の各欄で、[順序]の▼をクリックして 降順 をそれぞれ選択
HOKをクリック |
これで上位からの順番に並び替えが完了しました。 |
|
4.並べ替え後 |
|
|
|
|
順位の入力は、I7のセルに優勝と入れ、I8のセルに2位と入れて、前述の<コピーのヒント>で説明しているオートフィルを使って下にコピーすると何十位あっても楽に順位が入ります。
順位を入力して第1回大会の順位表が完成しました。さあ、表彰式をはじめましょう! |
|
|
|
地区別の順位も出したいというリクエストがありましたので追記しました。
■地区別の順位も知りたいという方へ
<手順>
1.第1回大会のシートをコピーして第1回大会(2)のシートをつくり、「所属」で並べ替えします。
2.「所属」毎の合計欄をつくります。グループの数が少なければこれで十分順位は分かります。
3.必要に応じて所属別の表を下につくって、並べ替えで順位表をつくります。 |
それでは、やってみましょう。
1.コピーした第1回大会(2)のシートで集計表の中にあるセル(分かりやすいところでセルD6「所属」)をクリックして、[並べ替えとフィルター]をクリックして、[ユーザー設定の並べ替え]を選択します。
[並べ替え]ダイアログボックスが出たら「先頭行をデータの見出しとして使用する」のチェックを確認して、最優先されるキーの▼をクリックして所属を選択して、OKします。
所属別に並べ替えた表ができました。所属ごとに上位者から順になっています。
地区別の得点を上位何人の合計で決めるかは、団体の参加人数によって大会ごとに異なりますが、ここでは、上位3人の合計で順位を決める方法で行ってみました。
所属別に並び変えた表から合計欄をつくるのに、上位3人以外の行をDereteで消して空白にします。
空白行の「氏名」欄に所属名を入れ、その行の生年月日・実打数・H1・2打・3打の欄にSUM関数で合計数を入れます。(合計したいセル(C7C8C9)をドラッグしてメニュー右端にあるをクリック)
グループの数が少なければこれで十分順位は分かりますが、地区別の順位表が必要な場合は次に進みます。
地区別の順位表をつくるのに、わざわざ項目や数字を入れるのは面倒なので、行をコピーして張り付けていきます。
まず、行6をクリックして6行目が選ばれた状態でコピーして、行27をクリックして貼り付けます。
次に同じように行10をコピーして行28に貼り付けます。ただし、この時は貼り付けのオプションで「値の貼り付け」を選びます。同じようにして、行15を行29、行20を行30、行25を行31に「値の貼り付け」で貼り付けます。
「氏名」を「地区名」に変えたり、罫線を付けたりして整えます。生年月日が数字に変わっていますが気にしなくても大丈夫です。(エクセルでは日付が1900年1月1日を起点にした日数で管理されていて、この数字をシリアル値といいます。セルの書式設定が「標準」や「数値」になっていると日付が5桁の数字で表示されます。)
続いて地区別の表の中のセル(地区名)をクリックして選んだ状態で、上述の[並べ替え]の手順]と同じやり方で並び変えます。
上位からの順番に並び替えが完了すれば、順位を入れて完成です。
|
|
|
|