契約先との期限もあと1ヶ月と少しとなった。業務も忙しいが、合間を縫って今まで作ってきたドキュメントは整理して引き継ぎたい。そこで「ファイル整理のための補助ツール」を作ることにした。
要するに、どのフォルダにどういうファイルがあり、それのファイルサイズや最終更新日などを一覧化し、ソートするなどして同一ファイルを削ったり、最新バージョンのみ残したり、という作業をするためのものだ。
Excelで作ろうとしたが、2003まではファイル数が制限を越える可能性大なのと、DBを使った方が便利なので、Accessで作成することにした。
で、作り始めると、案外簡単に出来てしまった。これは再帰呼び出しのおかげだろう。ついでなのでちょっとクラスに追い込んだりとか、同一だと判断したら削除したいファイルにフラグを立てておき、削除を実行したら消してくれる、という機能などを足した。今はこれで事足りるが、これに同一ファイルのもの、ファイルサイズが同じもの、などのデータを自動チェックする機能を付ければ絞込みが結構楽になるかもしれない。
なお、参考までに。
VBA標準のDirを使うより、VBScriptをVBA内で使った方が確実である。利用するにはVBEの[ツール]-[参照設定]から[Microsoft Scripting Runtime]にチェックを入れる。
ネットで調べた例だと、ほぼ「型がバリアント(要するに未定義)」なので、そこは自分で理解を深める意味も含めて「型を指定してみる」ことをお薦めする。