Create Nested Folders In One Call

Create Nested Folders In One Call

Suppose you need to create a tree of directories, all at once, in code. For example, you could create the tree C:1stDir2ndDir3rdDir4thDir with one call simply by feeding that path, as a string, into this procedure:

 Public Function MkDirs(ByVal PathIn As String) _	As Boolean	Dim nPos As Long	MkDirs = True  'assume success	If Right$(PathIn, 1) <>"" Then PathIn = _		PathIn + ""	nPos = InStr(1, PathIn, "")	Do While nPos > 0		If Dir$(Left$(PathIn, nPos), _			vbDirectory) = "" Then			On Error GoTo Failed				MkDir Left$(PathIn, nPos)			On Error GoTo 0		End If		nPos = InStr(nPos + 1, PathIn, "")	Loop	Exit FunctionFailed:	MkDirs = FalseEnd Function 

If any part of the path already exists, the routine creates only the new part. This routine works on strings representing local and mapped drives-those with a letter, colon, and backslash at the beginning. If the drive designation is left out, the directories are created starting at the default directory on the current drive.

See also  Essential Measures for Safeguarding Your Digital Data

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist