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...
 
Back
Top