次の方法で共有

Excel 関数教えて

Anonymous
2016-12-19T12:11:54+00:00

グランドゴルフの毎日のスコアを集計し月計、年計の 順位を決めています。

 打数÷ラウンド数(R)=平均打率で順位を決めます。但し規定R(多いRの6割以上)

 データー(並び替え)を使わず 関数(RANK)で出来ないか? 同平均打率の場合

 同順位になる。[IF(E11>=$E$8,RANK($H$11:$H$24,$H$11:$H$24,1),RANK($J$11:$J$24,$J$

     24,$J$11:$J$24,1)+$J$8)]

   年齢順が決まっているので同率の場合年齢順で決められないか?

  尚 データー(並び替え)では出来る。 ご教授よろしく

    グランドゴルフの集計表の例があれば?

[モデレーター注]

・質問内容から判断して カテゴリを移動しました。

移動前 : コミュニティ センター | Wiki 投稿者プログラムについて

            ↓

移動後 : Office | Excel | その他/不明 | 不明/その他

Microsoft 365 と Office | Excel | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

Anonymous
2016-12-22T01:24:12+00:00

ラウンドが0の方はRが0.6未満あるいは0.6以上の方すべて合わせた参加者全員の中で最下位としたいということでしょうか?

例:

Rが0.6以上の参加者:5名

Rが0.6未満の参加者:3名

Rが0の参加者:2名

⇒Rが0の参加者のランキングは、2名とも(5名+4名)+1=9位にしたい

名前 年齢 打数 ラウンド数 平均打率 R上位判定 R下位判定 R上位計算用打率 R下位計算用打率 R上位用RANK R下位用RANK 最終ランク
あああ 40 1000 10 100 1 100 4 4
いいい 39 900 10 90 1 90 3 3
ううう 42 1200 10 120 1 120 5 5
えええ 40 900 10 90 1 90 2 2
おおお 38 800 9 88.9 1 88.9 1 1
かかか 34 0 0 99,999.00 1 99,999.00 4 9
ききき 26 500 5 100 1 100 1 1
くくく 34 350 3 116.6 1 116.6 3 3
けけけ 23 220 2 110 1 110 2 2

最終ランクの式を下記のようにしてください

=IF(I2=99999,COUNTA(A:A)-1,IF(J2="",K2,J2))

この回答は役に立ちましたか?

0 件のコメント コメントはありません

6 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2016-12-20T23:44:44+00:00

    教授ありがとう。

     同スコア順位 回避しました。

    再度教えて頂きたい 未参加が2名以上いた場合方法がありますか?

      (R=0 打数=0)

      (R=0 打数=0)未参加

                      以上宜しくお願いします。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  2. Anonymous
    2016-12-20T06:39:38+00:00
    名前 年齢 打数 ラウンド数 平均打率 R上位判定 R下位判定 R上位計算用打率 R下位計算用打率 R上位用RANK R下位用RANK
    あああ 40 1000 10 100.0 1 100.0 4
    いいい 39 900 10 90.0 1 90.0 3
    ううう 42 1200 10 120.0 1 120.0 5
    えええ 40 900 10 90.0 1 90.0 2
    おおお 38 800 9 88.9 1 88.9 1
    かかか 34 0 0 99,999.0 1 99,999.0 4
    ききき 26 500 5 100.0 1 100.0 1
    くくく 34 350 3 116.6 1 116.6 3
    けけけ 23 220 2 110.0 1 110.0 2

    見づらいかもしれませんが、こんなかんじにしてみました。

    計算式ですが以下の通りです。

    「名前」セルがA1です。

    平均打率:=IFERROR(C2/D2-(B2/1000),99999)

    R上位判定:=IF(MAX($D$2:$D$10)*0.6<=D2,1,"")

    R下位判定:=IF(MAX($D$2:$D$10)*0.6>D2,1,"")

    R上位用計算打率:=IF(F2="","",E2*F2)

    R下位用計算打率:=IF(G2="","",E2*G2)

    R上位用RANK:=IF(ISERR(F2*H2),"",RANK(H2,$H$2:$H$10,1))

    R下位用RANK:=IF(ISERR(G2*I2),"",RANK(I2,$I$2:$I$10,1))

    ラウンド数と打数が0の人は便宜的に打率を99999にして、最下位になるようにしてます。

    (もし少ないほうがいいならマイナスの値とかでもいいと思います)

    R上位の人とR下位の人が並んでもいいように、計算用のセルをわけています。

    あまり一発の計算式でやろうとせず、いくつか計算用のセルにわけて考えていくと、実現できることが多いです。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  3. Anonymous
    2016-12-20T02:53:38+00:00

    多いRの6割以上、というのがちょっとわからなかったのですが、下記のような表をつくりたいものと思います。

    (グランドゴルフよくわからないので、数字は適当です・・)

    名前 年齢 打数 ラウンド数 平均打率 RANK
    あああ 40 1000 10 100.0 4
    いいい 39 900 10 90.0 3
    ううう 42 1200 10 120.0 5
    えええ 40 900 10 90.0 2
    おおお 38 800 9 88.9 1

    年齢を考慮するというのは難しいので平均打率の計算のところに、こっそり年齢の影響を追加するのが良いと思います。

    もし年齢が高いほうがRANKをあげたいのであれば、

    平均打率=打数÷ラウンド数-(年齢÷10000)

    として、ちょっとだけ平均打率に色を付けます。

    (見た目に影響しなければいいので、10000で割るも100000000で割るも自由です)

    年齢が低いほうがRANKをあげたいのであれば、

    平均打率=打数÷ラウンド数**+(年齢÷10000)**

    としてください。

    RANKは普通に平均打率の部分で算出します。

    「名前」セルをA1とした場合は「あああ」さんのRANKは以下のように計算できます

    RANK(E2,$E$2:$E$6,1)

    ご教授ありがとう。

     多いRの6割以上とは 野球の規定打席と同じで(例えば5ラウンドしか参加して

    いない選手と100ラウンド参加した選手との差です)その時点で1番ラウンドが多い

    選手の6割 100R*0.6=60ラウンドとなります。

     有資格者60R 以上で順位を決めます。但しそれ以下の選手の順位も決めます。

    有資格者の同点の選手の順位は解決しました、ありがとう。

     あと1件教えて下さい。

    ( 選手名、年齢順あり) 未参加の選手が複数あつた場合 順位が同じになる

     R=0 打数0 の場合も順位付けたい。 出来れば最下位に 今は未資格者の

    最上位に同順位になっている

      理由 その月は参加が無くても、次月参加ある場合必要ですので

                                  以上ヨロシク

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  4. Anonymous
    2016-12-19T13:24:40+00:00

    多いRの6割以上、というのがちょっとわからなかったのですが、下記のような表をつくりたいものと思います。

    (グランドゴルフよくわからないので、数字は適当です・・)

    名前 年齢 打数 ラウンド数 平均打率 RANK
    あああ 40 1000 10 100.0 4
    いいい 39 900 10 90.0 3
    ううう 42 1200 10 120.0 5
    えええ 40 900 10 90.0 2
    おおお 38 800 9 88.9 1

    年齢を考慮するというのは難しいので平均打率の計算のところに、こっそり年齢の影響を追加するのが良いと思います。

    もし年齢が高いほうがRANKをあげたいのであれば、

    平均打率=打数÷ラウンド数-(年齢÷10000)

    として、ちょっとだけ平均打率に色を付けます。

    (見た目に影響しなければいいので、10000で割るも100000000で割るも自由です)

    年齢が低いほうがRANKをあげたいのであれば、

    平均打率=打数÷ラウンド数**+(年齢÷10000)**

    としてください。

    RANKは普通に平均打率の部分で算出します。

    「名前」セルをA1とした場合は「あああ」さんのRANKは以下のように計算できます

    RANK(E2,$E$2:$E$6,1)

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません