• ベストアンサー

EXCELで星取表

EXCELで星取表を作り勝ち点の計算を自動化させたいと思っています。 今一番難しそうなのは、順位が変わった時に星取表がずれてしまいます。 具体的には  A B C D A * O O - B X * O X C X X * O D - O X * これでもしCが2位になった場合に単純にデータの並び替えを行うと  A B C D A * O O - C X X * O B X * O X D - O X * とおかしな星取表(自分同士の対戦*を斜めに一直線にしたい)になってしまいます。 これを補正するにはどのような方法があるでしょうか? 伝わったか不安ですが、アドバイスお願い致します。

  • lh_kl
  • お礼率43% (80/183)

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

>縦方向にも勝ち点の欄を置くということですか? そういうことになります。 邪魔なら、行を非表示にしておいてもいいし、並べ替えをする時だけ、縦の勝ち点の列を行列入れ替えて、コピペしてもいいでしょう(コピペは、行方向の並べ替えをする前にして下さい)。

lh_kl
質問者

お礼

ありがとうございます。 無事出来たようです。 列の並び替え初めてやりました。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

ソートだけで出来るものかどうか。 関数式では無理でしょう。 興味が出てVBAでやって見ました。(少数例でテスト済み) 既にある表(A1:G7)の下(A11:G17)のA列(A11:A17)に新順序のチーム(か選手)名を入力する。そして下記を実行する。 A1:G7の勝負を組替えました。 Dim d Sub test01() Dim cl As Range s = 10 '新しい表を作る開始行は11行から d = Range("a1").CurrentRegion.Rows.Count ' MsgBox d '----新縦チーム名順序を横にセット For i = s + 2 To s + 2 + d - 2 Cells(1 + s, i - s) = Cells(i, 1) Next i '-----自分自身と交差するセルに* For Each cl In Range(Cells(s + 2, 2), Cells(s + 2 + d - 2, 2 + d - 2)) ' MsgBox Cells(cl.Row, 1) & "=" & Cells(1 + s, cl.Column) If Cells(cl.Row, 1) = Cells(1 + s, cl.Column) Then cl = "*" End If Next '------元の表の勝敗を取ってくる For Each cl In Range(Cells(s + 2, 2), Cells(s + 2 + d - 2, 2 + d - 2)) If cl = "*" Then GoTo p01 r = Cells(cl.Row, 1): c = Cells(1 + s, cl.Column) cl = shoubu(r, c) p01: Next End Sub '---勝負を元の表(上部A2:G7から)取ってくる関数 Function shoubu(r, c) For i = 2 To d If Cells(i, 1) = r Then For j = 2 To 2 + d - 2 If Cells(1, j) = c Then shoubu = Cells(i, j) End If Next j End If Next i End Function

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 行方向(上下)に並べ替えて、さらに列方向(左右)に並べ替えればいいと思います。

lh_kl
質問者

補足

並び替えは勝ち点を優先してますが、縦方向にも勝ち点の欄を置くということですか?

関連するQ&A

  • RANK関数の使った星取表

    RANK関数を使って以下の順位をつけたいのですが、 どうやれば良いのでしょうか?(勝点で並んだとき、得失点で順位をつけたい)   勝点 得失点 順位 A  6   5    1 B  3   -2   3 C  3   6    2 D  1   2    4 どなたか教えてください。

  • サッカーの星取表の見方について教えてください

    サッカーの星取表から順位をつける時に、 (1)勝ち点の一番大きい順で見る (2)同点数の場合には、得失点差で見る (3)得失点差も同じ場合には、試合結果で見る の順で見ていけばよいでしょうか? また、(3)の試合結果が引き分けだった場合には同順位とるのでしょうか?

  • サッカーのリーグ戦星取表をexcelで作ってます

    質問です。 画像のように星取表を作っています。 シートを2つ作成し1つは入力シートもう一つは出力シートとしておきます。 入力シートでは画像のように黄色の範囲に結果を打込むと灰色の範囲に=で値を入れてあり 勝ち点や得失点の集計はSUMとCOUNTIFを使って入れています。 ここまではできるのですがそれを出力シートに 順位順に並べそのチームを結果も一緒に反映するようにするには どのような仕組みを作ればできるのでしょうか。 分かる方いらっしゃいましたら教えてください よろしくお願い致します。

  • エクセルで星取表がつくりたいのですが・・・

    IF関数を使って星取表を作成したいのですが可能でしょうか・・・ たとえばセルA1からC1まで枠がありその下にIF関数を使って○を表示させたいのです。検索する場所に2と入力するとセルB2に○が入力されるように出来ますでしょうか・・・ 実際にIF関数を使って表示はできたのですが検索する数が複数になるとどうしたらいいかわからなくなりまして・・・いろいろためしてみたのですが駄目で・・・    1 3 5と入力したら別のセルの 1 3 5 の場所に ○ ○ ○ このように表示させたいのですが・・・ 質問の意味がわかりにくくて申し訳ないです。

  • エクセルで順位表

    エクセルをつかった成績の順位表の関数についておしえてください   数学(点)   英語(点)   合計(点)   順位 Aさん   1      2      3       6 Bさん   2      4      6       4 Cさん   5      5       10      2 Dさん   6       7      13      1 Eさん   4      0      4      5 Fさん   6      4      10      2 ひとまず上記のような表をつくったのですが、さらに下記のような順位表をつくりたいのです。 1位 Dさん 2位 Cさん    Fさん 4位 Bさん 5位 Eさん 6位 Aさん ここで問題なのが同じ点数がある場合が多いので、どう表示させるべきかもよくわかりません。よろしくおねがいします

  • 大相撲の星取表をプリントアウトするには?

    千秋楽の翌日のスポーツ欄にあるようなその場所の星取表をプリントアウトできるようなサイト、または加工すればプリントアウトできるようなサイトはありますか? 過去十年くらい。幕内だけで可。決まり手までは無くてもいいので対戦相手の情報はほしい。 A4で1枚か2枚でプリントアウトできればと思います。 いろいろなサイトからコピペしてみるのですが、どうも上手くいきません。 情報自体はネットですぐ入手できるのですが、手元にプリントアウトしようとすると難しいのです。 同じ悩みの方もあるのでは? 教えて下さい。

  • エクセルでランクする時の同点の処理を教えて下さい

    ランク関数を使って順位を出そうと思います。同点の場合別の条件を当てはめて順位を出したいと思います。 チーム名  順位   得点   勝ち点  負け点  勝ち点差     A    4    1     1    6    -5  B    2    3     4    9    -5  C    2    3     5    3     2  D    1    5     8    2     6 数字は適当に当てはめたので、矛盾があるかも知れませんがこの様な場合、同点のチームだけ勝ち点差で順位をつけて、同順位の無いようにしたいのですが、どうすればいいのでしょうか。

  • エクセルについての質問です。

    たとえば元のデータから、値だけを(=A10みたいな) セルに表示するかたちをとっていて、下記のように 順位が変動してしまった場合に順位の並び替えを行いたいのですが、 順位が変動したCが5位→3位という形になってしまった場合、セルの並び替えを行うと どうしても(A=10)のような表示方法をとっていた場合はちゃんと並び替えができなくなってしまいます。 これをどんな方法でも良いのできれいに順位通りに自動的に並び替える方法はないでしょうか? よろしくお願い致します。 順位  1  A 2  B  5  C  6  D 4  E 3  F 7  G

  • エクセル 順位表

    エクセル 順位表 いつもお世話になります。 売上実績表の中に、順位表を追加したいのですが、実績表から抽出すると、同一の実績の営業所は、すべて同じ営業所になってしまい困っています。 A    B    C   D    E   F 営コード 実績      順位  営コード  実績 2     200   1   5  500 3   400   2   3  400 4   300   3   4  300 5   500   4   4  300 6   300   5   4  300 7    300 順位3、4、5位は、それぞれ4,6,7の営業所コードを表示したいのですが、どうしたらいいでしょうか。 F列には、F2=LARGE(B:B,ROW(A1)) E列には、E2=INDEX(A:A,MATCH(F2,B:B,0)) 営業所数は100程あり、ピボットテーブルを使用せずに作成したいです。 色々条件がついてますが、よろしくお願い致します。

  • エクセルで。。。

    エクセルで。。。 変則的な星取表を作成したいと思っておりますが、いいアイデアが浮かびません。 やりたいことは (例)   A  B  C  D  E  F 1鈴木 山田 2佐藤 佐々木 3鈴木 山本 4佐藤 山田 とした時に、以下のような星取表を作成したいと思っております。    山田  佐々木  山本 鈴木  1        1 佐藤  1    1 要するに、組合せの回数を星取表にペア回数として数字を入れたいのです。 皆さん、いいアイデアをご教示お願い致します。

専門家に質問してみよう