Check for Folder

A

Arnie

i have this code supplied by Joel which i have changed but i always get a
FindFolder="" when the folder is there

RootFolder = ThisWorkbook.Path
DestinationFolder = "\The_Folder_im_LookingFor"

Dim FindFolder As String
FindFolder = ""
On Error Resume Next

FindFolder = RootFolder & DestinationFolder

On Error GoTo 0

If FindFolder = "" Then
'not there

Worksheets("Macros").Run_All.Visible = False
Worksheets("Macros").Run_All.Enabled = False
Else
'is there

Worksheets("Macros").Run_All.Visible = True
Worksheets("Macros").Run_All.Enabled = True
 
J

Joel

This isn't the code I provided. Add a message box to help diagnose the problem

from
FindFolder = RootFolder & DestinationFolder

to
msgbox(RootFolder & DestinationFolder)

It is impossible for the code you posted for FindFolder to equal an empty
string ""

FindFolder = RootFolder & DestinationFolder
 
A

Arnie

Joel hi sorry this was the code you supplied

Set ScriptObj = CreateObject("Scripting.FileSystemObject")


'Check if Folder already exists
Found = False
Set F = ScriptObj.GetFolder(RootFolder)
For Each Folder In F.Subfolders
If Folder.Name = DestinationFolder Then
Found = True
Exit For
End If
Next Folder

'if folder does not exist then create
If Found = False Then
'Generate Folder
ScriptObj.CreateFolder (RootFolder & DestinationFolder)
End If

DestFolder = RootFolder & "\Generated_Scripts\"

but i always get found to be false i don't need to create the folder just
make sure its there.

appologies for not putting in correct code
 
A

Arnie

Joel sorted it i took out the \ in "\The_Folder_im_LookingFor"

and works fine

thank you for your help
 
J

Joel

This code isn't creating a folder unless it isn't found.

Set F = ScriptObj.GetFolder(RootFolder)

This statment is getting the parent folder

Then the for loop below is checking if the sub folder exists which is
DestinationFolder. Again the code you posted doesn't have DestinationFolder
assigned.

For Each Folder In F.Subfolders
If Folder.Name = DestinationFolder Then
Found = True
Exit For
End If
Next Folder
 
Top