[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『時間の早い順に順番[番号]をつける』(まだら)
並び替えをせずにA列の中で早い順(時間)にB列に番号をつける、、という関数はあるのでしょうか。出来ればその順で自動で並び替えが出来ればいいのですが・・・
時間は違うシートからVLOOKUPでもってきたものです。(値貼り付けはしません)
作成したいものはレースの成績表です。何十個分のキーになる数字(ゼッケンのようなもの)とその時間を入れると、各クラスごとの成績表(別シート、ゼッケン番号はあらかじめ入っている)にじかんが飛びそれをそのまま印刷するだけでよい・・というものを作りたいので、出来れば自動で成績順に並び替えまでしたいのです・・。こんなことってできるでしょうか!?どなたかいいお知恵をお願い致します。
おはようございます。 少し?かなり違うかもしれませんが、とりあえずとういこで、お願いします。 >何十個分のキーになる数字 これが、私には無理の様です。汗 A B C D E F G H I 順位 順位付加 クラス タイム 検索値 順位 クラス タイム 順位 クラス タイム 検索クラス 6 6.02 222 1:00 1222 1 222 0:03 1 111 0:30 111 1 1.03 222 0:03 1111 2 111 0:30 2 111 0:50 4 4.04 111 0:50 2111 3 111 0:30 3 111 1:20 8 8.05 111 1:20 3111 4 111 0:50 10 10.06 222 2:00 1333 5 333 0:50 2 2.07 111 0:30 2222 6 222 1:00 3 2.08 111 0:30 2333 7 333 1:10 5 4.09 333 0:50 4111 8 111 1:20 7 7.1 333 1:10 3222 9 222 1:20 9 8.11 222 1:20 4222 10 222 2:00 A2に =RANK(B2,$B$2:$B$11,ROW()) B2に =SUM(RANK(D2,$D$2:$D$11,ROW()),ROW()/100) C列はクラスを入力 D列はタイムを入力 E2に =COUNTIF($G$2:G2,G2)*1000+G2 F列は順位の連番を上から入力 G2に =VLOOKUP(F2,$A$2:$D$11,3,FALSE) H2に =VLOOKUP(F2,$A$2:$D$11,4,FALSE) I2に =IF(J2="","",F2) J2に =IF(COUNTIF($E$2:$E$11,ROW()*1000+$L$2),VLOOKUP(ROW()*1000+$L$2,$E$2:$H$11,3,FALSE),"") K2に =IF(COUNTIF($E$2:$E$11,ROW()*1000+$L$2),VLOOKUP(ROW()*1000+$L$2,$E$2:$H$11,4,FALSE),"") L2にクラスを入力すると IJK列に結果が表示されます。 でも、多分ご希望にはかなってないと思いますが、一案ということで お願いします。 で、どうでしょう? JKL列が付けられない(>_<) (夏目雅子似)
(まだら)
↑の図は私のExcelをそのまま貼り付けたものですから、同じ様に入力していただければ そのまま出ると思いますが、実際は少しちがうでしょうから、ポイントだけコメントして みますね。 Vlookup関数はすでに使われているのですから、詳しいことはいいですね? 今回のポイントは検索値ですね。 先ず左から、 A列は問題ないでしょ? B列は、同じタイムがあった時の為にRow(行)/100で差を付けて区別しているんですね。 C列D列も問題ないですね。 問題は、E列ですね。クラスNoが今回は3桁の数字なので、出現回数かける1000で 4桁目に順位を付けているんですね。だから、よくみると、クラス222の場合は 1222 2222 3222 4222 と出現する回数ごとに4桁目が増えているのがわかりますね。 後は、そんなに難しくないですね。 こんな感じでいいですか?かなりご要望のものとは異なってしまったけど、 応用していただければ、いいかと思います。では、また(^^)V (夏目雅子似) 失礼しました。 J2に =IF(COUNTIF($E$2:$E$11,ROW(A1)*1000+$L$2),VLOOKUP(ROW(A1)*1000+$L$2,$E$2:$H$11,3,FALSE),"") K2に =IF(COUNTIF($E$2:$E$11,ROW(A1)*1000+$L$2),VLOOKUP(ROW(A1)*1000+$L$2,$E$2:$H$11,4,FALSE),"") に変更してください。ごめんなさいm(__)m それから、 RANKのRow()は昇順に順位をつけたかっただけなので、 =RANK(B2,$B$2:$B$11,1) でも、いいですし、0以外の数値ならなんでもいいです。 Trueでもいいです。 わかり難くて重ね重ねごめんなさいです。m(__)m もう、みてらっしゃらないかな? (夏目雅子似)
おはようございます。 >その人がもっているハンディキャップ(数値)でつけるにはどうしたらよいですか? 基本的には同じことだと思うのですが、作業列を一列追加して (前回の表に間違いがあったので改めてのせておきますね。) 追加した列以外は前回と同じで、順位付加の B2に =SUM(RANK(E2,$E$2:$E$11,1),C2/100) かな? でも、同じ順位になる可能性が高いので、行とかを取り入れた方がいいと思います。 それから、 >もっとじーーっくり考えてみます。。 は、やばいですぅ。。汗^^; で、どうでしょう? (夏目雅子似)
順位 順位付加 H/C クラス タイム 検索値 順位 クラス タイム 順位 クラス タイム 検索クラス 6 6.02 2 222 1:00 1222 1 222 0:03 1 222 0:03 222 1 1.05 5 222 0:03 1111 2 111 0:30 2 222 1:00 5 4.04 4 111 0:50 2111 3 111 0:30 3 222 1:20 9 8.08 8 111 1:20 1333 4 333 0:50 4 222 2:00 10 10.07 7 222 2:00 3111 5 111 0:50 2 2.09 9 111 0:30 2222 6 222 1:00 3 2.1 10 111 0:30 2333 7 333 1:10 4 4.03 3 333 0:50 3222 8 222 1:20 7 7.01 1 333 1:10 4111 9 111 1:20 8 8.06 6 222 1:20 4222 10 222 2:00
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.