The MkDir statement in VBA (Visual Basic for Applications) is used to create new directories. It’s a straightforward command, but there are some important considerations to keep in mind when using it.
path: The path of the directory you want to create. This can be a relative or an absolute path.
How to Use
This command will create a new folder named “NewFolder” in the C drive.
Creating Nested Directories
If you need to create a subdirectory within a directory that does not yet exist, you must create each directory in the hierarchy separately. For example, to create “C:\NewFolder\SubFolder”, you must first create “NewFolder” and then create “SubFolder” within it.
It’s important to handle errors with MkDir, as attempting to create a directory that already exists will result in a runtime error. You can use error handling to manage this:
On Error Resume Next
If Err.Number <> 0 Then
MsgBox "Directory could not be created: " & Err.Description
On Error GoTo 0
This error handling will catch the error and display a message box if the directory cannot be created.
Using Variables for Path
You can also use a variable to hold the path string, which can be useful for dynamic directory creation.
Dim myPath As String
myPath = "C:\NewFolder"
- Permission: The user running the VBA script must have sufficient permissions to create a directory in the specified location.
- Existing Directory: As mentioned, attempting to create a directory that already exists will cause an error.
- Network Paths: MkDir can also be used to create directories on network paths, as long as the path is accessible and permissions are adequate.
MkDir is a simple but effective way to create directories directly from your VBA code, aiding in tasks like file organization and data management.