- ベストアンサー
エクセルで現在ランキング表を作成しています
kagakusukiの回答
- kagakusuki
- ベストアンサー率51% (2610/5101)
回答番号:ANo.3です。 先程の回答に関してですが、シート1のA1~C3の範囲に空欄等が存在した場合に対処するために、先程の回答中の数式を以下の様に変更して下さい。 シート1のA1セルの数式 =IF(ROWS($1:1)>COUNT(シート1!$A$1:$C$3),"",ROWS($1:1)) シート1のB1セルの数式 =IF($A1="","",LARGE(シート1!$A$1:$C$3,$A1) ) シート1のC1セルの数式 =IF($A1="","",INDEX(シート1!$D$1:$F$3,SUMPRDUCT((シート1!$A$1:$C$3=$B1)*ROW(シート1!$A$1:$C$3))-ROW(シート1!$A$1)+1,SUMPRDUCT((シート1!$A$1:$C$3=$B1)*COLUMN(シート1!$A$1:$C$3))-COLUMN(シート1!$A$1)+1))
関連するQ&A
- エクセルでスコアランキング表作成について
エクセルに関する質問です。 エクセルでスコアランキングを作成したいと考えております。 ゲームのスコアを入力していき、自動で順位順に並び替え、 パワーポイントにリンクで自動表示という流れを作りたいと考えております。 (1)入力sheet A列:順位 RANK関数(D列のスコアで順位) B列:参加者NO(固定001~) C列:ニックネーム(任意) D列:スコア 3-4桁の数値 (2)順位表sheet A列:順位 1~50 B列~D列→A列と入力sheetのA列を検索値として、参加者NO、ニックネーム、スコアを順位順に表示 という二つのsheetをつくっております。 スコアが同値で同じ順位が複数発生した際に、順位表sheetでN/Aになってしまいます。 同じスコアだった場合に、順位表に 4位、5位、5位、7位というように表示し、 同順位の人を表示する方法(vlookupですと、上の行しか読み込まれず・・・)が ありましたらご教示いただけないでしょうか? 御確認の程、よろしくお願いします。
- 締切済み
- Excel(エクセル)
- EXCELでランキング表の作成
Excelでランキング表を作成したいと思いますが シート1に、以下の表があるとします A列(地点名) B列(標高) ・・・ M列(時分) N列(気温) A地点 500 5時 +1.2 B地点 550 6時 -0.8 C地点 600 6時 -1.2 D地点 530 5時 -0.8 シート2に、気温(N列)の低い順に並べ替えを行って N列(気温) A列(地点名) B列(標高) ・・・ M列(時分) -1.2 C地点 600 6時 -0.8 B地点 550 6時 -0.8 D地点 530 5時 +1.2 A地点 500 5時 という表を作成したいと思います。 VBAを使わずに、通常の関数のみで作成するためには どのような手法がありますでしょうか? また、「ツール」-「並べ替え」等も使用したくありません。 わがままな質問ですが、御教授よろしくお願い致します
- 締切済み
- オフィス系ソフト
- エクセルでランキング表を作る
エクセルでランキング表を作りたいのですが方法がわからないので どなたかご教授お願いします。 自分がやりたいのはランキング表用のエクセルファイル(以下A)で いくつかのエクセルファイル(以下B・C・D)を参照(リンク貼り付け)し その数値をランキングのように表示したいと思っています。 B・C・Dのファイルは毎日数値がかわります。 ですのでAは毎日他ファイルを参照し中身が更新されます。 Aに表示されるランキングは1位から順番に表示したいです。 (Bが1番数値がよければBが1番上になり、2番なら2番目の位置になる) 詳しく解説されているサイト等でもよいのでお願い致します。
- ベストアンサー
- オフィス系ソフト
- Excel2010 ワーストランキングの作り方
Excel2010を使用しています。 売上のワーストランキングを作りたいのですが、作り方がわからず困っています。 普通のランキングは作ることができたのですが、ワーストランキングの作り方がわかりません。 A B C D E F 1 日付 時間 商品 売価 減価 利益 2 01/10 10:20 ○ 100 60 40 3 01/11 10:25 × 200 140 60 4 01/12 10:21 △ 150 50 100 5 01/14 11:00 □ 250 190 60 ・ ・ ・ 300 シート1にこのような表があります。 そして別のシートに A B C D E F 1 利益ベスト5 2 順位 日付 商品 利益 3 1 01/12 △ 100 4 2 01/11 × 60 5 2 01/14 □ 60 6 3 01/10 ○ 40 これはネットで検索して ランキングのシートのA3~A6には =IF(シート1!$F$2="","",IF(RANK(LARGE(シート1!$F$2:$F$300,ROW(A1)),シート1!$F$2:$F$300)>5,"",RANK(LARGE(シート1!$F$2:$F$300,ROW(A1)),シート1!$F$2:$F$300))) と入れたら順位を自動で表示できるようになり、 B3~B6には =IF($A$3="","",INDEX(シート1!$A:$A,1000-LARGE(INDEX((LARGE(シート1$D$3:$D$300,ROW(A1))=シート1$D$3:$D$300)*1000-ROW(シート1$D$3:$D$300),0),COUNTIF($B3:$B3,$B3)))) と入れたら日付が表示されるようになりました。 C列、D列もB列の =IF($A$3="","",INDEX(シート1!$A:$A,1000-・・・ のAをCとFに変えることで商品・利益が表示されるようになりました。 そこでこれのワーストランキングを作りたくてLARGEをSMALLに変えればできるのかと 思っていましたができませんでした。 正直上の関数も完全には理解できていません。 ネットで探しても自分のやりたいことにあう記事がなく質問することにしました。 Excel初心者で説明も下手ですが、よろしければお願いします。 自分の作りたいのは下のようなものです。 A B C D E F 1 ワースト5 2 順位 日付 商品 利益 3 1 01/10 ○ 40 4 2 01/14 □ 60 5 2 01/11 × 60 6 3 01/12 △ 100 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- ランキングの表を作りたいのですが教えてください。
みなさん こんばんは。 ランキングの表を作りたいのですが教えてください。 下記のように A1からA5にURLを入力して B1からB5にAmazon.co.jp 売上ランキングを表示したいのですが 可能でしょうか。 (A5はランキング外なので「なし」です。) A1 http://www.amazon.co.jp/exec/obidos/ASIN/B00005GLEI/qid%3D1107577925/sr%3D1-57/ref%3Dsr%5F1%5F2%5F57/249-7112396-7896364 A2 http://www.amazon.co.jp/exec/obidos/ASIN/B00005HFH1/qid%3D1107577805/sr%3D1-11/ref%3Dsr%5F1%5F2%5F11/249-7112396-7896364 A3 http://www.amazon.co.jp/exec/obidos/ASIN/B00005HFH2/qid%3D1107577805/sr%3D1-20/ref%3Dsr%5F1%5F2%5F20/249-7112396-7896364 A4 http://www.amazon.co.jp/exec/obidos/ASIN/B00005HIRR/qid%3D1107577825/sr%3D1-21/ref%3Dsr%5F1%5F2%5F21/249-7112396-7896364 A5 http://www.amazon.co.jp/exec/obidos/ASIN/B00005HFGW/qid%3D1107578001/sr%3D1-97/ref%3Dsr%5F1%5F2%5F97/249-7112396-7896364 Amazon.co.jp 売上ランキング {現在のランキング) B1 112421 B2 6102 B3 51931 B4 23072 B5 なし よろしく御願いいたします。
- 締切済み
- Visual Basic
- EXCELのデータベース利用について(VBA)
VBA初心者の者です。 下記の様なEXCELファイルを作りたいのですが、どのようにすれば良いのか まったくわかりません。 ACCESSでの構築が簡単なのかもしれませんが、データ量がそれほど多くないことと 職場にACCESSがないため、可能であればEXCELで構築したいと考えています。 私自身、プログラムの知識がなく、EXCEL VBAのサイトを確認するのですが、いまいち どうすれば良いのかわかりません。 ぜひご教授の程よろしくお願いします。 3つのシートの構成は以下になります。 【入力シート】 A1セルに文字列(A~Z)入力欄 【○○データシート】 A列に A~Z の文字列 B列に 001~100までの数値 C列に 001~100までの数値 D列に 001~100までの数値 E列に 001~100までの数値 例) A列 B列 C列 D列 E列 1 A 001 2 B 001 002 003 004 3 C 003 4 D 002 003 【▽コマンドシート】 A列に 001~100までの一意の数字 B列に 文字列(コマンド) C列に 文字列(コマンド詳細) 例) A列 B列 C列 1 001 xx blank 2 002 xxx△ xxx 3 003 xxxx x○ 4 004 xxxxx xxx 【欲しいVBA】 1、入力シートのA1セルに○○データシートのA列に該当するA~Zの 文字列を入力。 2、○○データシートのB列~F列までの数値を参照 3、2の数値において▽コマンドシートのA列に記載ある番号と紐づけを行い、 ▽コマンドシートのB列、C列に記載がある文字列を入力シートのB列、C列にコピー ※コピー時は▽コマンドシートの書式や体裁情報も含めてコピー。 例としては以下になります。 入力シートの A1セルにDを入力した場合は 入力シート A列 B列 C列 1 D xxx△ xxx 2 xxxx x○ 3 以上、ご教授よろしくお願いします。
- ベストアンサー
- その他(業務ソフトウェア)
- エクセルのシート1にある文字や数値をシート2の指定した場所へ飛ばす事が
エクセルのシート1にある文字や数値をシート2の指定した場所へ飛ばす事が出来ますでしょうか? 出来るようであれば、ぜひご教授ください。 シート1のA列にNo.、B列に東京23区名、C列に数値A、D列に数値B、E列に数値C、F列に計、最後の行に合計のリストがあります。 例えば、シート1のリストの文京に数値Aが11、数値Bが12、数値Cが13。新宿に数値Aが14、数値Cが15。杉並に数値Bが16。練馬に数値Bが17、数値Cが18と入力された時、シート2の指定の場所、ABC1にNo.の2、ABC2に文京、A3に数値Aの11、B3に数値Bの12、C3に数値Cの13、ABC4に合計の36。DEF1にNo.の4、DEF2に新宿、D3に数値Aの14、F3に数値Cの15、DEF4に合計の29。ABC6にNo.の5、ABC7に杉並、B8に数値Bの16、ABC9に合計の16。DEF6にNo.の7、DEF7に練馬、E8に数値Bの17、F8に数値Cの18、DEF9に合計の35。 このような、文字と数値をシート2へ出力する事が出来ますでしょうか? ようするに、シート1のリストに数値を入れたら、シート2へ自動的にNo.・文字・数値などが表示される。 説明が下手ですみません。 文字での説明は難しいですね。少しでもわかりやすく表にしてみました。 シート1 A B C D E F 1 No. 区名 数値A 数値B 数値C 計 2 1 千代田 3 2 文京 11 12 13 36 4 3 中野 5 4 新宿 14 15 29 5 5 杉並 16 16 6 6 世田谷 8 7 練馬 17 18 35 9 8 台東 10 9 荒川 11 合 計 25 45 46 116 シート2 A B C D E F 1 2 4 2 文京 新宿 3 11 12 13 14 15 4 36 29 5 6 5 7 7 杉並 練馬 8 16 17 18 9 16 35 10 今月はこのようになったり、来月は他の区になったりします。 おわかりになりますでしょうか? 出来ましたら、具体的にわかりやすくご教授をお願い致します。 それでは、宜しくお願い致します。
- ベストアンサー
- その他MS Office製品
- 指定した数だけデータをコピペする方法
VBAの参考例を教えてください。 <シート1> A列に1から順に数字が入力されており、B列からE列まで数値のデータが入力されています。F列にはB列からE列にデータが入力されているセルの数をカウントした関数が入力されています。 <シート2> シート1のB~Eに入力されたデータが縦に入れ替えの上A列にコピぺされています。 ここで、シート1のA列の数値をコピーし、シート1F列に示されたデータ数分だけ、シート2のF列に縦に順々にペーストしていく方法をご教示ください。シート1のA列に入力された数値が最後の行にくるまでこれを繰り返します。 シート1 A B C D E F 1 a b c d 4 2 e d f 3 3 d e 2 ・ ・ ・ シート2 A B C D E F a 1 b 1 c 1 d 1 e 2 d 2 f 2 d 3 e 3 当方、VBAは全くの初心者です。急遽仕事で必要になってしまい、質問しました。 どうぞよろしくお願いします。
- 締切済み
- Visual Basic
- エクセルの名前の定義について。
ご覧いただきありがとうございます。 エクセルの名前の定義についての質問です。 (1)【sheet1】 A2:A6に『aa』、 B2:B10に『bb』、 C2:C6に『cc』という名前を付けたとします。 ちなみにそれぞれのセルには文字列が入力されています。 (名前の定義の《範囲》はブックではなく、sheet1) (2)【sheet2】 B2:D6に『aa』、 B7:D15に『bb』、 B16:D20に『cc』と、sheet1と同じ名前を付けました。 それぞれB列・C列・D列には数字が入力されています。 (名前の定義の《範囲》はブックではなく、sheet2) ちなみにA列には、sheet1に入力されている文字列と同じものが入力されています。 A2:A6にはsheet1で『aa』と名前をつけた範囲と同じ文字列。 A7:A15にはsheet1の『bb』と同じ文字列。 A16:A20には『cc』と同じ文字列です。 ここからが本題です! (3)【sheet3】 A2に何らかしら関数を入れて、【sheet1】で作った名前(aaやbbやcc)が1つ表示されるようにしたとします。 そしてB2には、A2で表示された名前の中の文字列が1つ表示されるようにします。 (例えばA2に『aa』と表示されたら、B2には◯◯) 更にC2には、B2に表示された◯◯という文字列を使って、【sheet2】の名前『aa』の中のB列と、A列にある◯◯とが交差するセルに入力されている数字(図でいう(5))を表示させる関数を入力したいのです。(INDEXやINDIRECT、MATCH関数など…) 他に例えば、A2に『bb』(sheet1の名前)、B2に★★と表示されたら、C2には【sheet2】の名前『bb』の中のB列と、A列にある★★が交差するセルに入力されている数字を表示させたいです。 同じように、今度は、D2には、B2に表示された◯◯という文字列を使って、【sheet2】の名前『aa』のC列と、A列にある◯◯の交差するセルに入力されている数字を表示させたいです。 長々とややこしくてすみません… 説明分かりますでしょうか?? つまりは【sheet3】のC2・D2・E2に入力する関数が知りたいです。 自分なりに関数を入力してみたのですが、A2で表示された名前がsheet1での名前なので、sheet2の情報を引き出す事が出来ません。 わざわざsheet1とsheet2でシートを分けたのは、同じシート内で同じ名前が付けられないと思ったからです! どなたか分かりましたら教えて下さい! どうぞよろしくお願い致します。 ※ちなみに、貼付した図の『・』は以下省略の意味で使ってます。
- 締切済み
- Excel(エクセル)
- エクセルVBA/抽出・貼付け
下記を行いたいのですが、どのようなコードになるのでしょうか? シート001(入力用) (1)A1~A50、B1~B50、C1~C50、D1~D50 に数値、E1~E50に文字列 (2)F1~F50、G1~G50、H1~H50、I1~I50 に数値、J1~J50に文字列 ※空白行混在 シート002(計算用) シート001に作ったコマンドボタン:クリックにより、 シート002を表示させ、A1~E100に、 シート(1)のA1~E50とF1~J50の空白行以外を連続して 反映させたい。並べ替え用など別シートを用いずに、 VBAコード内で処理したい。
- ベストアンサー
- オフィス系ソフト
お礼
ありがとうございました。 すっぽりと答えに当てはまりました。
補足
答えに当てはまったと思ったのですが、数値が同じ箇所でどうしても文字列も同じく重複してしまいます。