View Single Post
  #6   Report Post  
Posted to microsoft.public.excel.programming
Tom Ogilvy Tom Ogilvy is offline
external usenet poster
 
Posts: 27,285
Default Dir function resetting

Dim FolderPath As String
Dim Folder As String
Dim RecFile As String

Public Sub Create_File_List()
dim v(1 to 12) as String
dim i as Long
i = 1
Folder = Dir(FolderPath, vbDirectory)
Do While Folder < ""
If Folder < "." And Folder < ".." Then
If (GetAttr(FolderPath & Folder) And vbDirectory) = vbDirectory Then
v(i) = Folder
i = i + 1
End if
Folder = Dir()
Loop

for i = 1 to 12
Folder = v(i)
if len(trim(folder)) < then
RecFile = Dir(FolderPath & Folder & "\*-pt.xls")
Do Until RecFile = ""

'insert some formulas, yadda yadda yadda

RecFile = Dir

Loop
End If

Next
End Sub

--
Regards,
Tom Ogilvy


"Emily Edgington" wrote in
message ...
Yes, I only need to go one level deep within each of the directories -

each
of the 5 directories has 12 folders within it (for months of the year),

and I
would only need the files within there. There should not be any folders
within the monthly folders, just files.

"Tom Ogilvy" wrote:

You could use your current procedure to go 1 level of folders deep. Is

that
what you want or do you want to examine all folders below the specified
folder, no matter the depth?

--
Regards,
Tom Ogilvy

"Emily Edgington" wrote in
message ...
I am trying to use the Dir function to loop through folders in

specified
directories, and again to loop through the files in those folders, but

my
second Dir is messing with the first one ("RecFile = Dir" in inner

loop
makes
"Folder=Dir" in outer loop no longer work).

I have tried putting the inner loop in it's own procedure and calling

it
within the outer loop, to no avail. Any suggestions?



Dim FolderPath As String
Dim Folder As String
Dim RecFile As String

Public Sub Create_File_List()
Folder = Dir(FolderPath, vbDirectory)
Do While Folder < ""
If Folder < "." And Folder < ".." Then
If (GetAttr(FolderPath & Folder) And vbDirectory) =

vbDirectory
Then

RecFile = Dir(FolderPath & Folder & "\*-pt.xls")

Do Until RecFile = ""

'insert some formulas, yadda yadda yadda

RecFile = Dir

Loop

End If
End If
Folder = Dir
Loop

End Sub