Codecademyでプログラマーになるよ

44歳未経験から頑張ってプロのプログラマーになる

40日連続学習達成&仕事でプログラムが役に立った話

f:id:Taichita:20141210203705p:plain

連続学習記録が惰性の代名詞とならないよう、今日は仕事でプログラム修行の成果を活かした。

定期的に取引先に提出するPDFファイルがある。しかし担当者がうっかりしていてフォーマットが変わったことに気づいていなかった。古いフォーマットのファイルから必要なデータを抽出して新しいフォーマットで出力!と華麗にこなしたかったが実力が追いつかなかった。

しょうがないのでマニュアルで作業を開始する。コピー&ペーストをする項目は20前後。時間を計って見ると4分ほどかかる。

それにも劣らず面倒なのがファイル作成だ。製品名、案件名、自社のリファレンス番号、取引先のリファレンス番号の組み合わせがファイル名になる。PDFファイルに加えてWord形式の添え書き(これには日付と取引先のリファレンス番号だけ入力すればいいのだがファイル名の形式が微妙に違う)、そしてこの二つのファイルを一件ごとにフォルダにいれるのだが、このフォルダ名もまた微妙に組み合わせが違う。

雛形からこれらのファイルをコピーして二つのファイル名と一つのフォルダ名をつけるだけで3分近くかかってる。全部で100件以上あるのでこれだけで300分かかる計算だ。これだけでも自動化できれば時間の節約になる。

これらの元となる情報はExcelのワークシートとしてまとまっている。やりたいことを明確に言葉にして紙に書いてみる。それをExcel VBAでどうやって実現すればいいのか調べる。引数を変えながら、少しづつ動かしながら3時間ほどかかったが完成した。

一応、動くことは動くがエラー処理とかは無いので自分しか使えない。文字列の処理もExcel上で関数を使って処理してる。