- 締切済み
複数個のcsvファイルから一気にデータを統合?
初めて質問させていただきます。 毎日一定の書式が決まった形でデータを管理しております。(出勤簿).出勤者のみの氏名が表記される。 1.ファイル名(2005_1_1.csv)日付 2.シート1 3.列Aに通し番号(1.2・・・・)、列Bに氏名 社員名簿が一応あります。 1.A列に通し番号、B列に氏名(meibo.csv) この形で毎日記録をしておりましたので、データ(csv)ファイルがたくさんたまってしまいました。 そこで、このような複数のデ-タファイルを、社員名簿を元に、出勤日に●をつけるといったことをしたいと思っています。 一気に複数のファイルからデータを吸出し、統計を取ることは可能でしょうか? ちょっとデータの管理で困ってしまっていて、悩んでいます。 具体的な事例などをもしお教えいただけたら幸いです。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- kokorone
- ベストアンサー率38% (417/1093)
マクロ(VBA)で作りましょう。 1.meibo.csv を読みこみ、A列2行目以降に番号、 B列2行目以降に氏名を書き込む。 2.出勤CSVを日付順に読み込み、ファイル名から 切り取った日付をC列1行目に書き込む。 3.そのCSVを読み込み、A列と合致する番号の 行(N)を検出し、C列・N行に●を入れる 4.CSVのファイルエンドまで、3を繰りかえす。 5.CSVファイルがなくなるまで、C列・D列と 位置をずらしながら、2.・3.・4.を繰り 返す これでOKではないでしょうか?
- hrm_mmm
- ベストアンサー率63% (292/459)
OSとか、どのプログラム言語が使えるのかわかりませんが、 シートという単語があるので、excelで作成しているのでしょうか? ならば、excelマクロ(VBA)で、出来そうですけど? プログラムスキルも解らないので方向性だけ 1.日付けファイルなので、開始と終了の日付けを指定してcsvファイルを読み込む ファイルごとに別のbookになるかも? 2.読み込んだ列の各データを、名簿シートの名前の列と比べて(lookup関数とか使えそう) 3.名前の列の何番目に見つけたかで、名簿シート日付け列のその行のセルに●を書き込む
お礼
hrm_mmmさんありがとうございます。 同様にvbaで作ってみます。 一応書き忘れていたので書いておきます。 OS Windows XP Professional Excelを利用 プログラムのほうは、5年ほどやっておりましたが、 しばらく使っていなかったので忘れかけています。 ありがとうございました。
お礼
kokoroneさんありがとうございます。 やはりVBAですよね。 vbscriptかなにかでできるような期がしたのですが、 無茶はしないことにします。 とても参考になります。 早速作ってみます。