「はぁ……また今月も12件分のクライアント用フォルダを手で作るのか。右クリックして、新規作成して、名前を変えて……。あ、間違えて一個上の階層に作っちゃった。よく見たら名前も間違えてた。もう嫌だなぁ、これだけで10分以上経ってるよ。」
事務業務をしていると、こうした「単純だけど地味に時間がかかる作業」って多いですよね。実は私も新人の頃、毎月のフォルダ作成が面倒で、ついつい後回しにしていました。
でも、Excel VBAを使えば、そんな悩みはたった1秒で解決できます。
今回は、バックオフィス業務を劇的に効率化する「フォルダの作成(CreateFolder)」と「削除(DeleteFolder)」について解説します!
フォルダ作成は「専用の事務員さん」にお願いしよう
VBAでフォルダを操作する際は、「FileSystemObject(ファイル・システム・オブジェクト)」という機能を利用するのが便利です。
例えるなら、「パソコンの中の書類整理を完璧にこなしてくれる、ベテランの事務員さん」を雇うようなイメージになります。
まずは、フォルダを作成する魔法のコードを見てみましょう。
Sub MakeNewFolder()
' 1. 「FileSystemObject」を呼び出します
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
' 2. 作成したいフォルダのパス(住所)を指定します
Dim folderPath As String
folderPath = "C:\TestFolder" ' ※ここではCドライブ直下のテストフォルダを指定しています
' 3. もし同じ名前のフォルダがなかったら、新しく作ります
If fso.FolderExists(folderPath) = False Then
fso.CreateFolder (folderPath)
MsgBox "フォルダを作成しました!"
Else
MsgBox "そのフォルダはすでにあります!"
End If
' 4. 使い終わったら片付けます
Set fso = Nothing
End Sub
手作業で50個のフォルダを作成する場合、どれほど操作に慣れている人でも5分ほどはかかってしまいます。
しかし、このコードを「ループ(繰り返し処理)」と組み合わせれば、50個でも100個でも一瞬で作成できます。一見すると地味な作業に見えますが、非常に強力な自動化ツールになります。
フォルダ削除は「シュレッダー」と同じ!慎重に。
次に、フォルダを削除する方法について解説します。ここで、私の恥ずかしい失敗談を一つ。
以前、テスト用のフォルダを消すつもりが、コードの書き間違いで「大事な共有フォルダ」を丸ごと消しそうになったことがあります。顔が真っ青になりました……。
VBAの削除コマンドは、Windowsの「ゴミ箱」を経由せず、いきなり「シュレッダー」にかけるのと同じです。一度削除すると元に戻せませんので、プログラムを実行する前に「本当に削除してもよいか」を再確認する仕組みを組み込むことが大切になります。
Sub RemoveFolder()
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim folderPath As String
folderPath = "C:\Users\Desktop\不要なフォルダ"
' 削除する前に「本当にあるか」を確認する
If fso.FolderExists(folderPath) = True Then
' 最終確認のメッセージを出して暴走を防ぎます
If MsgBox("本当に削除してもいいですか?", vbYesNo) = vbYes Then
fso.DeleteFolder folderPath
MsgBox "削除完了しました。"
End If
Else
MsgBox "消すべきフォルダが見つかりません。"
End If
Set fso = Nothing
End Sub
今日から使える!まとめ
ITやプログラミングと聞くと難しく感じられますが、本質は「手順をコンピューターに覚えさせて、自分の代わりに実行してもらう」ということになります。
- CreateFolder:新しい箱(フォルダ)を作る。
- DeleteFolder:いらない箱をシュレッダーにかける。
- FolderExists:そもそも箱があるか確認する(これ大事!)。
まずはデスクトップにテスト用のフォルダを作ることから始めてみてください。
一歩ずつ進んでいきましょう!
VBAを独学で学び、業務自動化に5年以上携わってきた私が、「本当に実務で役立った!」と感じた2冊を紹介します。 もう本選びで失敗したくない方は、よければ参考にしてみてください。


コメント