Dir() limited to 48 files?

  • Thread starter Thread starter Claude
  • Start date Start date
C

Claude

I have written the following code that opens the files in
a directory, then performs some manipulations, and saves
the file:

Do While NameOfFile <> ""
Application.EnableEvents = False
Workbooks.Open (CurDir & "\" & NameOfFile)
Application.EnableEvents = True
....
Workbooks(NameOfFile).Close savechanges:=True
NameOfFile = Dir()
Loop

What puzzles me is that the loop runs 48 times, then stops
without reason. Is there some limitation on how many times
the dir() command can be run? File 49 is in no way
different to the other files.
 
Hi Claude

How many files see this test file in C:\Data

Sub Testing()
Dim mybook As Workbook
Dim Fnum As Long
Dim FNames As String
Dim MyPath As String
Dim SaveDriveDir As String

SaveDriveDir = CurDir
MyPath = "C:\Data"
ChDrive MyPath
ChDir MyPath
FNames = Dir("*.xls")
If Len(FNames) = 0 Then
MsgBox "No files in the Directory"
ChDrive SaveDriveDir
ChDir SaveDriveDir
Exit Sub
End If

Application.ScreenUpdating = False
Fnum = 0
Do While FNames <> ""
Fnum = Fnum + 1
FNames = Dir()
Loop
ChDrive SaveDriveDir
ChDir SaveDriveDir

MsgBox Fnum

Application.ScreenUpdating = True
End Sub
 
OK, Excel just crashed, and now its running through till
the end of the directory... This must be due to the
sunspot activity...
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top