こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

【エクセル/ランキング資料に前週の順位のみ反映させたい】

【エクセル/ランキング資料に前週の順位のみ反映させたい】

エクセルで、生徒のテスト点数管理をしております。
【名前】【点数】【順位】の並びで、その週の1位から順にデータが抽出されます。
その1番新しいランキングに前の週の順位を入れたいのですが
何か良い方法はありますでしょうか?

・毎週【名前】【点数】【順位】のデータは順位ごとで抽出されます。
・そのデータに【前週の順位のみ】を加えた資料にしたいです。
・データは約100名分×10クラスの量

関数やマクロで良い方法があれば教えてください。
100名×10クラス分を1週間毎で処理していきたいのです。

今までは、一人ひとり前回の順位を検索→手入力で作成していたのですが
あまりにも時間と労力がかかるので、マクロ等でツール化したいなと思っております。

画像を添付します。
左:今週のデータ
中:前回のデータ
右:【左と中のデータを利用し作成したいデータ】

ぜひ、皆様のお力をお借りしたいので、よろしくお願いします!

投稿日時 - 2010-07-22 00:41:10

QNo.6055084

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

5人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

この課題など、VLOOKUP関数を使用し名前で先週表を引けばしまいではないのか。それぐらい知っていて、それではうまく行かない、ぐらい添えて質問しては。VLOOKUP関数も知らないのはエクセルの勉強不足。
 ただし氏名を苗字で扱うと同姓が居る可能性は大きいから混乱する。番号的なものを取り入れるべきだが、出来ないのかな。
先週存在しないものはこの関数でエラーになるから、適当な文字列を表示。
=VLOOKUP(今週氏名セル、先週成績順意表、先週成績順意表で順位の在る列の何列目、FALSE)
先週成績順意表はシートが別なら!でシート名を前につける。
エラーは
if(not(iserror(上記関数式)),"先週いない",上記関数式)
WEB(Googleなど)でVLOOKUP関数で照会すれば沢山記事や例で解説がある。

投稿日時 - 2010-07-22 12:27:25

ANo.3

添付画像を見ると、今回のランキングと前回のランキング表を別々に作成されているようですが、元のデータベースから(今回の)ランキング表を自動作成する部分はできているのでしょうか?

もし、この数式ができているのであれば、元のデータベースからすべての結果を一覧表示できるはずです(基本的に1つのデータベースシートですべての必要データを表示するのが効率的な作業になります)。

私が添付した画像のように、元データのデータベースシートのレイアウトを具体的に例示されれば、対応する数式が提示できると思います。

投稿日時 - 2010-07-22 11:43:06

ANo.2

I2セルからL2セルまで項目名をお示しの表のように入力するとしてI3セルには次の式を入力して右横方向にオートフィルドラッグしたのちに下方にもオートフィルドラッグします。

=IF($A3="","",IF(COLUMN(A1)<=3,INDEX($A:$D,ROW(),COLUMN(A1)),IF(COLUMN(A1)=4,IF(COUNTIF($E:$E,$A3)=0,"前回欠",INDEX($G:$G,MATCH($A3,$E:$E,0))),"")))

なお、今週のデータに名前があっても前回のデータにその名前が無いこともありますのでその場合には前回欠と表示されるようになっています。

投稿日時 - 2010-07-22 06:45:35

ANo.1

携帯から見ているので、画像が良く見えないのですが、
普通~にVLOOKUP使えばデータをマージ出来るんじゃないすか…

投稿日時 - 2010-07-22 00:54:11

あなたにオススメの質問