ExcelVBA MkDirで指定したパスにフォルダを新しく自動作成する方法

 

ExcelVBA MkDirで定したパスにフォルダを新しく作成することで、ファイルの整理や自動化された出力処理の保存先を準備します。使い方や注意点など、サンプルコードをもとに具体的に解説します。

 

📌 「これ、自動化できたらラクなのに…」と思ったこと、ありませんか?
実はその作業、Excelマクロで簡単に自動化できるかもしれません。
「でもマクロって難しそう…」という方のために、完全初心者向けの入門記事をご用意しました!

👇実務で“そのまま使える”テンプレ付きで、コピペするだけ
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き

 

Excel VBA MkDirでフォルダ作成する利用

以下のようなシーンで利用されます。

1.特定のフォルダ構成を自動的に作成する。

2.日付や条件に基づいて動的にフォルダを作成し、その中にデータやファイルを保存する。

3.プログラム内で複数のレポートやデータを分けて管理するために新しいフォルダを作成する。

Excel VBA MkDirでフォルダ作成する利用|使い方とポイント

 

使い方

MkDir 関数を使用してフォルダを作成します。

ポイント

1.フォルダの存在確認
作成するフォルダがすでに存在している場合、MkDir はエラーを返します。そのため、事前にフォルダが存在するか確認する必要があります。

2.親フォルダの存在
MkDir は、親フォルダが存在していないと動作しません。必要に応じて親フォルダを事前に作成してください。

3.パスの形式
パスは正確に記述する必要があります(例: "C:\Users\User\Desktop\sourceFile")

4.パーミッション(権限)
作成先フォルダに書き込み権限が必要です。

 

Excel VBA MkDirでフォルダ作成するサンプルコード

基本的なフォルダ作成

Option Explicit

Sub CreateFolder()
    Dim folderPath As String
    folderPath = "C:\Users\User\Desktop\sourceFilemake" ' 作成したいフォルダのパス

    ' フォルダが存在しない場合のみ作成
    If Dir(folderPath, vbDirectory) = "" Then
        MkDir folderPath
        MsgBox "フォルダを作成しました: " & folderPath, vbInformation
    Else
        MsgBox "フォルダはすでに存在しています: " & folderPath, vbExclamation
    End If
End Sub

1.folderPathの指定
作成したいフォルダのパスを指定します。

2.Dir関数
指定したパスが存在するか確認します。

3.MkDir関数
指定したパスにフォルダを作成します。

4.フォルダの作成が成功した場合はメッセージボックスで通知します。

 

自分の実力を客観的にチェックしたい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集をご用意しました。

👉無料ExcelVBAベーシック選択問題138問

 

今日の日付を使用して、動的にフォルダを作成する

Option Explicit

Sub CreateFolderWithDate()
    Dim folderPath As String
     ' 今日の日付をフォルダ名にする
    folderPath = "C:\Users\User\Desktop\sourceFile\" & Format(Date, "yyyy-mm-dd")

    ' フォルダが存在しない場合のみ作成
    If Dir(folderPath, vbDirectory) = "" Then
        MkDir folderPath
        MsgBox "フォルダを作成しました: " & folderPath, vbInformation
    Else
        MsgBox "フォルダはすでに存在しています: " & folderPath, vbExclamation
    End If
End Sub

この機能を活用すれば、作業の効率化やファイルの整理が大幅に向上します。

 

記憶定着問題集

操作方法:1.●●●をクリック(スマホはタップ)で答え表示。2.答えをクリック(スマホはタップ)で●●●表示。1⇔2を繰り返すことで、記憶を定着できます。

1.folderPathの指定
●●●したいフォルダのパスを指定します。

2.●●●関数
指定したパスが存在するか確認します。

3.●●●関数
指定したパスにフォルダを作成します。

4.フォルダの作成が成功した場合はメッセージボックスで通知します。

 

Excel VBAエキスパートベーシックとスタンダード、どちらを選べばいいか判断が難しい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集を用意しました。

👉無料ExcelVBAベーシック選択問題138問