新年度や新プロジェクトが始まるとき、業務用のフォルダを手作業でいくつも作ることがあります。
「請求書」「報告書」「打ち合わせ資料」など、毎回同じような名前のフォルダを作成するのは手間ですし、抜けやミスも起こりやすくなります。
こうしたときに役立つのが、VBAによるフォルダ構成の自動作成マクロです。Excelから一発で必要なフォルダを一式作成できれば、業務準備の手間を大幅に減らすことができます。
決まった構成をまとめて作成するマクロ
次のコードでは、「請求書」「見積書」「契約書」などのよく使うフォルダ名をリスト化し、それらを一括で作成する処理を行っています。
Sub CreateFolderStructure()
Dim basePath As String
Dim fList As Variant
Dim f As Variant
' 作成先のパスを指定(デスクトップに「業務準備」フォルダを作る)
basePath = Environ("USERPROFILE") & "¥Desktop¥業務準備"
' 作成先のベースフォルダがなければ作成
If Dir(basePath, vbDirectory) = "" Then MkDir basePath
' 作成するサブフォルダの一覧
fList = Array("請求書", "見積書", "契約書", "打ち合わせ資料", "納品書")
' 各フォルダを順に作成
For Each f In fList
If Dir(basePath & "¥" & f, vbDirectory) = "" Then
MkDir basePath & "¥" & f
End If
Next f
MsgBox "フォルダ構成の作成が完了しました。"
End Sub
このコードを実行すると、デスクトップに「業務準備」という親フォルダが作成され、その中に5つのサブフォルダが並ぶ構成になります。フォルダがすでにある場合には、上書きせずスキップする仕様です。
補足:Environ(“USERPROFILE”)の意味
この部分は、ユーザーのプロファイルフォルダ(=C:¥Users¥ユーザー名)を取得する関数です。
通常、特定のユーザー名を直接記述してしまうと、そのマクロは他のパソコンで正しく動かなくなります。しかし Environ(“USERPROFILE”) を使えば、そのパソコンを使っているユーザーの環境に応じて正しいパスを自動取得できます。
つまり、パソコンごとに異なるユーザー名にも対応できる、安全で再利用性の高い書き方ということです。これは複数人でマクロを共有する際にはとても重要なポイントです。
実装するメリット
このようなマクロを使ってフォルダ構成を自動化することで、次のような効果が期待できます。
- フォルダ名の打ち間違いや作り忘れを防げる
- 担当者が変わっても同じ構成で運用できる
- 手順書いらずで、誰でもすぐ使える環境を整えられる
- 一貫したフォルダ構成により、情報の探しやすさが向上する
とくに、定期的にプロジェクトが立ち上がる部署や、複数人で同じ仕組みを使うチームには効果的です。
まとめ
業務のスタートに必要なフォルダをExcelから自動で作成できるようにしておくことで、準備作業の抜け漏れを防ぎ、作業効率を高めることができます。
- よく使うフォルダをあらかじめ配列で用意して一括作成
- ベースフォルダも自動で作られるため、完全な初期化が可能
- 誰が使っても同じ構成になるので、運用ルールがブレにくい
今回は一つのフォルダにしましたが、会社ごとに同一のフォルダ構成で作成する場合などもFor〜Nextを追加することで作成することができます。
手作業で行っていた準備業務を、自動化によって「ボタン1つ」に変えていくことで、日々の作業負担が大きく軽減されます。ファイルやフォルダの整備から効率化をはじめてみましょう。
