ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Check for Folder (https://www.excelbanter.com/excel-programming/418885-check-folder.html)

Arnie

Check for Folder
 
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



joel

Check for Folder
 
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

"Arnie" wrote:

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



Arnie

Check for Folder
 
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

"Joel" wrote:

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

"Arnie" wrote:

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



Arnie

Check for Folder
 
Joel sorted it i took out the \ in "\The_Folder_im_LookingFor"

and works fine

thank you for your help

"Joel" wrote:

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

"Arnie" wrote:

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



joel

Check for Folder
 
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



"Arnie" wrote:

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

"Joel" wrote:

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

"Arnie" wrote:

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




All times are GMT +1. The time now is 10:01 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com