プロが教える店舗&オフィスのセキュリティ対策術

エクセル2013でゴルフのハンディキャップの計算をしたいのですが、以下のような場合です。
5試合以下 Best 1のスコアー、6-7の場合 Best 2試合の平均、8-10の場合、Best 3試合の平均、。。。20試合の場合は Best 10試合の平均となります。
このような場合エクセルではどのような関数にしたらいいですか?

よろしく

A 回答 (6件)

ゴルフの事はよく分からないので、とりあえず計算できるだろうというやり方だけ。



プレイヤーひとりひとりの名前でシートを用意します。
デイファレンシャルなるものを計算できるように、各列に過去のプレイデータ?を入力します。
A列にそれを表示する式を入れ、B列以降にデータを入れると、参照する時どの列だったか分からなくならずに済みます。
数を数えたいので、A1は空白の方が直接カウントできて良いかと。
(B1等A1を除く1行目はタイトル行にするなら、ですが)

これにより各プレイヤーのデイファレンシャルなるものがいくつあってその値がいくらかが分かるようになりました。

スコア枚数とデイファレンシャルの数を対応させる表を別のシートにでも作っておきましょう。

メインのシートに、
A列にプレイヤー名を入力し、
B列にそのプレイヤーのスコア枚数(INDIRECTによってプレイヤー名のシートを指定し、COUNT系の関数でその中のスコア枚数が計算可能)を表示。
C列にそのスコア枚数に応じたデイファレンシャルの数を表示する。(IF文で20を超えた場合は20として、スコア枚数をVLOOKUPで対応表から検索し、対応するデイファレンシャルの数を取得できる)
D〜M列(最大10なので)に、INDIRECTとCOLUMN及びLARGEもしくはSMALL(ベストスコアが大きい方から取るならLARGE、小さい方から取るならSMALL)で、プレイヤーのシートから○番目のスコアを取得します。
IF文でC列に表示された数を超えた場合は空白にするのを忘れずに。
N列にD〜M列の平均をAVERAGEによって表示させれば完成です。

右端では見にくいなら、必要に応じて位置と式の内容を変更してください。
    • good
    • 0
この回答へのお礼

いろいろとありがとうございました。
試してみます。関数をあまり使っていないのでとまどっています。
どうも最終的にはVBAの勉強のし直しのようです。

お礼日時:2017/02/24 02:54

例えば



https://www.g-circle.com/index.html

なら普通に、グループ作ってスコア管理できます。
自分で作るなら、

http://www.jga.or.jp/jga/html/handicap/about.htm …

に詳しく載っています。
がんばってください。
    • good
    • 1
この回答へのお礼

参考にします。

お礼日時:2017/02/24 02:55

まったくの勘違いです。

JGAのサイトに詳しく出てますから勉強をおすすめします。
ストロークコントロールとはHCに応じて、ホールの最高打数以上をトータルスコアにカウントしないことです。HC応じて、各ホールの7打以上カットとか、ダブルボギーカットなど細かいルールがあります。つまりコースのパー設定とホールごとのスコアがないとトータルスコアからは何をやってもHCは計算できません。
あなたの言うディファレンシャルはHCがすでに正しく計算されている人が、当日のコースでHCをいくつにするのがフェアかの説明なので、それを平均とかしてもHCの計算にはなりません。
やってみればわかりますが同じスコアでもでこぼこがない人がHCが少なくみえます。実際はUSGAを含め、同じスコアでも、でこぼこがある方が上手いと見なすのがHCの根本思想なので、それに反します。結果、ほんとは上手い人がHCを多くもらって有利になり、いつも上位に来ることになります。これではHCの意味がありません。

最初にHCを計算するときの暫定HCがないとストロークコントロールができないので、厳密に初期計算の暫定のルールと、再計算のルールも定義されています。
無料のサイト、GDOでもGoraでも、何もせずに正確にHC算出が出来ます。エクセルでは自動計算はほぼ無理です。
    • good
    • 1
この回答へのお礼

ありがとうございます。
JGAサイトを調べましたがRCGAと同じ計算式です。
http://www.jga.or.jp/jga/html/handicap/about.htm …のサイトでも同じことが書かれています。ESC(Equatable stroke control)もストロークコントロールも私がやっているのと同じで、Diff. を各Score CardごとにESCにもとづいて計算しています。何か私の質問に対して誤解があるようなので説明させてください。我々はHC Indexを計算するのに個人によってPlayするコースも回数も違うのでExcelを使って自動的に出せないかの質問なんです。HC Index を一度獲得すると当日のCourseとTeeの場所による
HC=Index X Slope rate/113 で算出してPlayしています。

お礼日時:2017/02/24 02:48

うーんなんかおかしいような。

無料のサイトいくらでもあります。グループ管理も出来て、正式な計算も出来ます。
そもそもディファレンシャルは、ストロークコントロールから計算するもので、コメントのディファレンシャルHCとは意味が違います。それはHCが決まったあと当日のHCを計算するものです。
なので暫定最大HCから再計算するロジックと、コースのホールデータが毎回ないと、該当式だけでは計算できません。それをエクセルでやるのは相当大変です。
    • good
    • 0
この回答へのお礼

この計算式はRCGAのサイトからとったものです。adjusted grossの意味は例えば、HC18の人ならば最高7打までOKで超えたものはGrossから差し引いたものです。もしかしてこれがControled ストロークになるのですか??
そして、Score Cardが15枚しかない人はそのうちのBest6を選び、Diff.の平均値を出し96%を掛けたものをIndexと呼んでいます。それにCourseのTeeの違いによるSlope rate/113を掛けたものを当日のHCとして使っています。無料サイトのものは計算が十分でなく、私の知る限りでは簡単のものばかりです。皆さんのお知恵をお借りしたかったのは人によりScore Cardの数がまちまちですのでScoreをいれると自動的に必要なBest数を選んで計算してくれるようなものです。とにかくご意見ありがとうございました。

お礼日時:2017/02/23 14:03

別のところでも書きましたが、合計からはハンディキャップの計算は出来ません。

ハンディキャップを計算するには

・ まず枚数が少ない場合の対象スコアには決まりがあり、5~6枚:ベスト1~ ・・・・・・・20枚:ベスト10、これは正しい。
・ ただし、これは、ベストスコアではありません。ベストディファレンシャルですので、スコアとは全く違います。
・ そのためには、HCに応じて、各ホールをストロークコントロールしてスコアを修正します。スコアは人によって、10打以上かわります。
・ それからコースレートを引きます。これで、ティーやコースで、5~6打違います。
・ その値に、スロープレート/113 が、ディファレンシャルとなります。これでまた、5~6打違います。
・ ディファレンシャルの平均に0.96をかける(スコアにかけるのではありません)と、それがHCです。
・ ただし、ストロークコントロールするためには、HC計算前にHCを暫定でつける必要があるため、最初は最大HCとみなしてストロークコントロールします。

となります。なので、エクセルで計算するのは、普通は、相当の工夫が必要になります。ネットのサービスを無料で使うのをおすすめします。

やるとわかりますが、コースレート、スロープレート、ストロークコントロールをすると、簡易計算したHCより、プラマイナス10ぐらいぶれたりしますので、
簡易計算はほとんど無意味な数字です。
    • good
    • 0
この回答へのお礼

Puyo3155さん

Res. ありがとうございます。
私たちは毎月30名ほどでトーナメントを開いてゴルフを楽しんでいるものですが、今まではRCGAの市販のソフトでHCを算出していたのですが毎年
Renewal Feeがかかり、自分たちで算出したく皆さんのお知恵を拝借したかったのです。計算式はUSGAの出している。
HC Diff.=(Adjusted gross - course rate)X113/slope rate
Index = (average of Diff. by # of games) x 0.96
HC = Index X (slope rate by Tee /113) を使っています。
ご意見ありがとうございました。

お礼日時:2017/02/23 09:06

試合数と平均に用いるスコアの数の関連性が分からないのですが、


11〜19試合の場合というのは存在しないのですか?
LARGEもしくはSMALLで、大きい方からあるいは小さい方から○番目、というデータを抽出できます。
必要な数だけ抽出して、抽出したデータの平均をAVERAGEで求めればよいでしょう。

試合数によって自動で場合分けするにはスコアの数をどう判断するかが分からないと不可能です。
    • good
    • 0
この回答へのお礼

yuji3690さん
ありがとうございます。関連性はゴルフ協会で直近の最低20試合のスコアよりBest10のスコアの平均の96%をハンディキャップとすると決められていますのでそれに従っていますのでよくわかりません。ただ、Play数が少ない方の場合もあるので例えば10試合の場合はBest3をPick、Play数が多いほどPickするスコアの数を増やしてより正確なハンディキャップが得られることだと思います。11-12(4)、13-14(5)、15-16(6)、17(7)、18(8)、19(9)、20(10)となっています。現在A(Playの日)B-D(スコアー)E(ハンディキャップ)F(Netの合計)、SumifとCountifを混ぜたような関数を探しています。例えばAーcolumnで試合数を判断してFの小さい方から上記の条件で自動で合計するスコアの数をPickしてその平均を出すようにしたのですが。 よろしく

お礼日時:2017/02/20 01:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!