・6桁以下の選手番号
・試合日(西暦8桁)
・試合結果
・その他
無作為の順番で上記のデータが入ったエクセルの表があるのですが、
この表を使い、試合に出た回数が多い順番で選手をランキング付けしたいのです。
関数やVBAは若干かじったことある程度の経験しかないのですが、
COUNTIF関数を使い、その選手にとって、
その試合が何試合目なのかは、一応目で分かるようにはなりました。
※ 選手番号がA列だとすると、B1=COUNTIF($A$1:A1,A1)をB列にコピーしました。
本当はこの数字を上手く使ってランキング表を作ろうと思ったのですが、
良い案が浮かばず、今回質問させていただきました。
1位 選手番号 試合回数
2位 選手番号 試合回数
・
・
・
できることなら、上記のようにランキング表を作り、
また選手の数が多いので3回以上試合を行なっている選手だけで表を作りたいのですが、
関数やVBAを使い上記の表を作成する良い案はありませんでしょうか?
No.2ベストアンサー
- 回答日時:
こんばんは!
一例です。
せっかくCOUNTIF関数で試合数を出されているので、余計なお世話になるかもしれませんが・・・
↓の画像のようにこちらで勝手に表を考えてみました。
作業用の列を2列使わせてもらっています。
作業列E2セルに
=IF(A2="","",IF(COUNTIF($A$2:A2,A2)=1,COUNTIF($A$2:$A$100,A2),""))
F2セルに
=IF(E2="","",COUNTIF($E$2:$E$100,">"&E2)+COUNTIF($E$2:E2,E2))
として、E2・F2セルを範囲指定し、F2セルのフィルハンドルで下へずぃ~~~!っとコピーします。
(F列は単純にRANK関数で処理してしまうと、同試合数の場合抽出が困難になりますので、敢えて同試合数でも順位を変えています。
尚、同試合数の場合は上側の行の方が上位になります)
そしれ、I2セルに
=IF(COUNT($E$2:$E$100)<ROW(A1),"",INDEX($A$2:$A$100,MATCH(ROW(A1),$F$2:$F$100,0)))
J2セルに
=IF(I2="","",COUNTIF($A$2:$A$100,I2))
という数式を入れ、I2・J2セルを範囲指定し、J2セルのフィルハンドルで下へコピーすると
画像のような感じになります。
数式は100行目まで対応できるようにしていますが、
データ量によって範囲指定の領域はアレンジしてみてください。
以上、長々と書きましたが
参考になれば幸いです。m(__)m
No.4
- 回答日時:
シート1ではA1セルに選手番号、B1セルに試合日、C1セルに試合結果、D1セルにその他の文字列がそれぞれ入力されておりデータが2行目から下方にあるとします。
最初にすべての選手について試合回数についてのランク付けの方法を示します。当然3回以上試合を行っている選手についてもランク付けする方法についてもその後に示します。
シート1には作業列としてE1セルには試合回数と文字列を入力しE2セルには次の式を入力します。
=IF(A2="","",IF(COUNTIF(A$2:A2,A2)=1,COUNTIF(A:A,A2),""))
F2セルには次の式を入力します。
=IF(E2="","",RANK(E2,E:E)+COUNTIF(E$2:E2,E2)/10000)
E2セルとF2セルを選択してそれらの式を下方にオートフィルドラッグします。
答えとなるシート2ではA1セルに順位、B1セルに選手番号、C1セルに試合回数と文字列を入力します。
A2セルには次の式を入力します。
=IF(ISNUMBER(SMALL(Sheet1!$F:$F,ROW(A1))),INT(SMALL(Sheet1!$F:$F,ROW(A1))),"")
B2セルには次の式を入力します。
=IF(A2="","",INDEX(Sheet1!A:A,MATCH(SMALL(Sheet1!$F:$F,ROW(A1)),Sheet1!$F:$F,0)))
C2セルには次の式を入力します。
=IF(B2="","",INDEX(Sheet1!E:E,MATCH(SMALL(Sheet1!$F:$F,ROW(B1)),Sheet1!$F:$F,0)))
最後にA2セルからC2セルを選択しそれらの式を下方にオートフィルドラッグします。
試合回数が3回以上の選手だけを表示するのでしたらシート1のE2セルに入力する式を次のようにして下方にオートフィルドラッグすればよいでしょう。シート2での変更は必要ありません。
=IF(A2="","",IF(COUNTIF(A$2:A2,A2)=1,IF(COUNTIF(A:A,A2)>=3,COUNTIF(A:A,A2),""),""))
No.3
- 回答日時:
No.2です!
たびたびごめんなさい。
投稿した後で質問を読み返していると・・・
>選手の数が多いので3回以上試合を行なっている選手だけで・・・
という事ですので、
前回の作業列E2セルの数式を変更してみてください。
=IF(AND(COUNTIF($A$2:A2,A2)=1,COUNTIF($A$2:$A$100,A2)>=3),COUNTIF($A$2:$A$100,A2),"")
という数式にして、後の作業は前回と同じで大丈夫だと思います。
どうも何度も失礼しました。m(__)m
No.1
- 回答日時:
VBAとか使ったように、1発で表示させることはできませんが、EXCELの基本機能を利用すれば、近い形にはなります。
順位はEXCELの持つソート機能で並び替えすればいいでしょう。先頭のセルから1と入れてコピーしていけばいいですが、同じ試合回数があると順位が正しくならないですけど。
特定回数以上のものに限定したい場合は、抽出機能(フィルタ)で表示しないようにできます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ソフトウェア データ入力のインターフェースについて 2 2022/09/27 09:07
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 第二回模試の3科目の各得点と合 1 2023/04/25 18:02
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Excel(エクセル) VBA : スクレイピングできない 4 2023/05/12 22:26
- Excel(エクセル) エクセルの大きなシートでグラフを見つける 4 2022/07/28 10:07
- Excel(エクセル) エクセルで当番表を作成したいです。 1 2023/08/09 19:53
- Excel(エクセル) IF 関数で「〇〇 という文字を含む場合」の分岐処理で表示された数字はSUMで数字集計できますか? 3 2022/08/02 16:29
- Visual Basic(VBA) 2つのシートの任意のセルの番号が一致したら、一致した行をコピーする VBA 2 2023/06/19 20:48
- Excel(エクセル) エクセルで保存時に全部のシートの最終行をコピーして数値で貼り付けたい 3 2023/08/14 15:49
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Officeを開くたびの「再起動メ...
-
英数字のみ全角から半角に変換
-
outlookのメールが固まってしま...
-
大学のレポート A4で1枚レポー...
-
マクロの書き方を教えて下さい
-
Microsoft Formsの「個人情報や...
-
【Excel VBA】PDFを作成して,...
-
エクセルでXLOOKUP関数...
-
teams設定教えて下さい。 ①ビデ...
-
マイクロソフト 一時使用コード...
-
逆順
-
会社PCのメールが更新されない
-
Microsoft365で写真をアルバム...
-
【Excel】セル内の文字が正しい...
-
office365って抵抗感ないですか?
-
エクセルやワードを無料で使え...
-
Office 2021 Professional Plus...
-
Outlook で宛先が複数の場合の人数
-
VLOOKUP関数について
-
【マクロ】文字を1文字づつ、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
英数字のみ全角から半角に変換
-
「生産性ソフトウェア」とは何...
-
会社PCのメールが更新されない
-
【関数】○年○ヶ月と表示された...
-
WEBの記事を印刷する際にA...
-
エクセルでXLOOKUP関数...
-
Microsoft familyに追加されま...
-
会社のOutlookにてメールを予約...
-
Microsoft Formsの「個人情報や...
-
Microsoft365の一部を解約したい
-
マクロ自動コピペ 貼り付ける場...
-
Outlook で宛先が複数の場合の人数
-
outlookのメールが固まってしま...
-
【Excel VBA】PDFを作成して,...
-
大学のレポート A4で1枚レポー...
-
office365って抵抗感ないですか?
-
Microsoftにofficeアプリについ...
-
Excel テーブル内の空白行の削除
-
マイクロソフト 一時使用コード...
おすすめ情報