プログラミング

【Excel VBA】フォルダがなければ作る関数

マクロで作ったファイルを保存する先を作りたい場合があります。

この時保存フォルダがない場合作ってくれるマクロです。

'使い方
Sub TEST()
	Call MakePath("C:\TEMP\A\B\C")
	MsgBox "作成完了"
End Sub

'再帰関数
Sub MakePath(path As String)
    Dim parentFolder As String
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    parentFolder = fso.GetParentFolderName(path)
    If Not fso.FolderExists(parentFolder) Then
        Call MakePath(parentFolder)
    Else
        fso.CreateFolder path
        Exit Sub
    End If
    fso.CreateFolder path
    Set fso = Nothing
End Sub

どんなに階層が深くてもそこまで追って作成してくれるのでとても便利ですね。コピーして使ってください。

-プログラミング
-,