Open a new Directory

C

CLR

Hi All..........

Would someone please be so kind as to tell me the code to open a new
directory on my C:\ drive?......and also please, the code to delete it.

Thanking you very much.

Vaya con Dios,
Chuck, CABGx3
 
B

Bob Phillips

Chuck,

What do you mean by open a directory?

To delete one, try

Dim FSO As Object

Set FSO = CreatObject("Scripting.FileSystemObject")
FSO.DeleteFolder "C:\MyDir" , force:=True



--

HTH

Bob Phillips
... looking out across Poole Harbour to the Purbecks
(remove nothere from the email address if mailing direct)
 
C

CLR

Thanks Bob.........I actually meant "Create" a directory, not just "open"
one as I posted.......that's what happens when you get old <g>..........

I suppose we also have to first determine if one exists by that
name........then, if not, Create a new one, if it does, then delete the
existing one and re-create it?..........

This stuff makes my head hurt..........

Vaya con Dios,
Chuck CABGx3



We're trying to decern what we want from what you sent anyway,
 
T

Tom Ogilvy

No need to leave VBA to do it. With On Error you don't need to check if it
exists either

On Error Resume Next
mkdir "C:\MyDir"
On Error goto 0


'
'
'

On Error Resume Next
Kill "C:\MyDir\*.*"
rmdir "C:\MyDir"
On Error goto 0

Assumes MyDir has no subdirectories.
 
B

Bob Phillips

Chuck,

Tm shows yhou how to make a directory in one statement, but if it does
exist, any files in it will remain. This may be what you want, but you
explanation suggests that you might wan t to clear it, so if this is the
case, this will do as you describe

Sub CLR()
Dim sFolder
Dim fso
sFolder = "C:\NewDir"
If FolderExists(sFolder) Then
Set fso = CreateObject("Scripting.FileSystemObject")
fso.deletefolder sFolder, force:=True
Set fso = Nothing
End If
MkDir sFolder

End Sub

'-----------------------------------------------------------------
Function FolderExists(Folder) As Boolean
'-----------------------------------------------------------------
Dim sFolder As String
On Error Resume Next
sFolder = Dir(Folder, vbDirectory)
If sFolder <> "" Then
If (GetAttr(sFolder) And vbDirectory) = vbDirectory Then
FolderExists = True
End If
End If
End Function


--

HTH

Bob Phillips
... looking out across Poole Harbour to the Purbecks
(remove nothere from the email address if mailing direct)
 
C

CLR

Indeed that did it Tom.............thank you very kindly.........it works
now

Vaya con Dios,
Chuck, CABGx3
 
C

CLR

You perceived correctly Bob........that's exactly what we want and your
suggestion has been added and all is well now in "headache-land".

Thanks again ever so much to both you and Tom......

Vaya con Dios,
Chuck, CABGx3
 
Top