
Windowsで特定のフォルダ内に、たくさんのフォルダを作成する必要ができました。
Excelに作成したいフォルダ名を入力しておいて、VBAで一括でフォルダを作ることにしました。
マクロが入っているファイルと同じフォルダに一括でフォルダを作成してみます。
そのサンプルです。
< スポンサーリンク >
VBAで一括でフォルダを作成するサンプル
作成したいフォルダが既にある場合はエラーになるので、フォルダの存在チェックも入れておきます。
' フォルダ作成
Sub Make_Folder()
Dim WS As Worksheet
Dim PathTxt As String
Dim FolderPathTxt As String
Dim FolderExist As Boolean
Dim i As Long
' アクティブシートをセット
Set WS = ActiveSheet
' このブックのパス取得
PathTxt = ThisWorkbook.Path
' 1列目から5行目まで繰り返す
For i = 1 To 5
' 作成したいフォルダ名を作成
FolderPathTxt = PathTxt & "\" & WS.Cells(i, 1).Value
'フォルダ存在チェック
FolderExist = Folder_Exist(FolderPathTxt)
' フォルダが存在しない場合フォルダ作成
' フォルダが存在する場合2列目に「既存」
If FolderExist = False Then
MkDir FolderPathTxt
Else
WS.Cells(i, 2).Value = "既存"
End If
Next i
MsgBox "終了"
End Sub
'フォルダ存在チェック
Function Folder_Exist(FolderPathTxt As String) As Boolean
' フォルダが存在しない場合はFalse
' フォルダが存在する場合はTrueを返す
If Dir(FolderPathTxt, vbDirectory) = "" Then
Folder_Exist = False
Else
Folder_Exist = True
End If
End Function
シートに作成したいフォルダ名を入力しておきます。

マクロを実行する前の画像です。リストの中のフォルダを1つ作っておいてエラー時に2列目に「既存」と入力されるか試してみます。

マクロを実行してみました。フォルダが作成されました。

既に存在していたフォルダの2列目に「既存」と入力されています。成功です。

こんな記事も書いています