【業務効率化】 VBAでフォルダ作成・削除を自動化!初心者でも5分でマスターできる超入門

【業務効率化】VBA
スポンサーリンク

「はぁ……また今月も12件分のクライアント用フォルダを手で作るのか。右クリックして、新規作成して、名前を変えて……。あ、間違えて一個上の階層に作っちゃった。よく見たら名前も間違えてた。もう嫌だなぁ、これだけで10分以上経ってるよ。」

事務業務をしていると、こうした「単純だけど地味に時間がかかる作業」って多いですよね。実は私も新人の頃、毎月のフォルダ作成が面倒で、ついつい後回しにしていました。

でも、Excel VBAを使えば、そんな悩みはたった1秒で解決できます。

今回は、バックオフィス業務を劇的に効率化する「フォルダの作成(CreateFolder)」と「削除(DeleteFolder)」について解説します!

【業務効率化】VBAの記事を見る 

フォルダ作成は「専用の事務員さん」にお願いしよう

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の記事を見る 


VBAを独学で学び、業務自動化に5年以上携わってきた私が、「本当に実務で役立った!」と感じた2冊を紹介します。 もう本選びで失敗したくない方は、よければ参考にしてみてください。

この記事を書いた人
ぐー

手取り15万円の会社員でしたが、年間100万円以上節約していました。
株式投資で年間360万円以上投資し、iDeCoも併用しています。
総資産はアッパーマス層に到達しました。
資格は日商簿記3級を持っています。

このブログでは、私が実践してきた節約術やリアルな資産運用、生産性を高めるITスキルについて発信しています。

生活を豊かにするため、高配当株投資で年間配当金60万円をめざしています。
現在の年間配当金は30万円ほどです。

ゲーム・漫画・アニメなどが好きです。
一緒に資産形成をがんばりましょう!
よろしくお願いします!

ぐーをフォローする
【業務効率化】VBAITスキル
スポンサーリンク
ぐーをフォローする

コメント

タイトルとURLをコピーしました