いのエう’s blog

のんびりと更新していきます o(^-^)o

記録シート作成記 02

2006-07-07 22:43:34 | PC

 今回は結果シートの作成。データが違ったときのために、なるべく数式を使うことにする。そうすることで、Excelでも簡易データベースになる。MS Accessなんて持ってないし、数百人くらいならばデータベースは必要ないだろう。
 本当は、エントリーシートから数式を使って参照していけば、誤字などの修正時かなり楽になるんだけど・・・
 今回も前回と同様にマクロは使っていない。いきなりマクロで作成するとバグ潰しが面倒になるので、少しずつ作成していく。マクロを使うところは、ここに書いてある通りで考える。
 必要な項目は、次の通り。

  • 順位1から順番に割り当てる。同タイムは、同じ順位にする。これらから、RANK関数をする。

=RANK(タイムのセル, 全員のタイムのセル範囲, 1)

  • タイム次の2通りの案がある。

1.  記録シートからそのまま持ってくる。

=記録シート!セル

2.  記録を時間に変更する。
    (1日を1.0としたシリアル値に変更)

=TEXT(INT(セル/100)/(24*60)+MOD(セル,100)/(24*60*60),"mm:ss.00")

左寄せで表示されるため、右寄せにする。

 今後の記録を比較するためにも、2.の方法の方が良いかもしれない。

  • ビブ
  • 氏名
  • ふりがな
  • クラス
  • 年齢(いちおう列を非表示)
  • クラブ

これらの項目は記録シートからそのまま持ってくる。

=記録シート!セル

ビブNo.からVLOOKUP関数で持ってくるという方法もあるが、そのまま持ってきた方が重くならないだろう。

 表示項目の列は上から順。これも簡単に変更可能なように、セル番号に$文字をつけて対応する。

ソートは、順位で昇順に。
印刷範囲は、記録全てを指定。
タイムがない(未入力 or 文字列)場合。ビブNo.はあるが、タイムが記録されていない時で判定。文字列をそのまま持ってくるか、"DS"と書き込む。

=IF(記録シート!ビブ<>"" AND 記録シート!タイム<>"",記録シート!タイム,"DS")

今回はここまで。次回は、クラス分け。


マクロで数式を作成するときの覚書。

Worksheets("Sheet1").Range("A1").Formula = "=IF($B3<>"""",VLOOKUP($I3,$B$3:$G$13,2,0),"""")"


最新の画像もっと見る

3 コメント

コメント日が  古い順  |   新しい順
HTMLエディタ (いのエう)
2006-07-07 23:10:37
gooブログ付属のHTMLエディタってクセがあって調整が難しい。

TEXTエディタ部分でいろいろなタグが通れば良いのだけどなあ。
返信する
俺も残業中、夜を迷走中。あ~かえりてぇ (しげしげ)
2006-07-08 04:56:41
おぉ~、いのえう!元気してる?!

いのえう、自分の記録管理をエクセルでやってるんだね。流石だ・・・・・

なんかいのえうがんばってんなぁ。

体に気をつけてがんばってねん。

またいっしょに滑ろうぜ。



追伸

WindowsにVMWare入れてLinuxつっこんでPosgre入れるじゃん、この状態でWindowsにODBCドライバを入れると(もち、DBの設定はするけどさ)エクセルやアクセスとか、ODBCドライバ対応のアプリでポスグレのデータにアクセスできるぜ。面白いよ。でもって、アパッチ入れてPHPいれてWebアプリ作って、手ごろなAJAXライブラリを拾ってきていじれば、結構びっくりなアプリ作れるよ。やってみそ!はぁ・・・PerlでCPAN、ルビーでRuby on Rails、いまではバイトでも手軽に使えるWebアプリをちょちょいと作れる時代・・・・。
返信する
しげしげ久しぶり~♪ (いのエう)
2006-07-08 07:54:59
遅くまで(朝まで)仕事おつかれさま。

自己管理記録じゃなくて、大会の記録だよ~。



ポスグレだったら、Windows版も出ているので、

別にLinux入れなくてもアクセスできるよー。



最近の言語って簡単にアプリ作れるよね。

でも、ハードウェアからどんどん遠ざかっているので、

何か物足りない。言語自体の処理が重いのに、

フレームワークやらで更に速度が遅くなっている。

開発効率は上がったかもしれないけど、パフォーマンス

が悪くなって、ユーザーの満足が得られなくなってきて

いるような気がする今日この頃です。

返信する

コメントを投稿