всем привет.
имеется следующая проблема.
на диске папка, в которой штук 20 тыс. подпапок (имя подпапок представляет собой нумерацию от 1 до N).
нужно при нажатии кнопки автоматически создавать следующую по счету подпапку.
сейчас это работает так:
Sub add_fold()
Dim arr() As Integer
ipath = "d:\data"
Set filescript = CreateObject("Scripting.FileSystemObject")
Set list_folder = filescript.GetFolder(ipath)
Set list_subfolders = list_folder.subfolders
n = 1
For Each thesubfolder In list_subfolders
ReDim Preserve arr(n)
arr(n) = Val(thesubfolder.Name)
n = n + 1
Next
Do While i < UBound(arr)
maxvalue = arr(i)
If arr(i + 1) > maxvalue Then maxvalue = arr(i + 1)
i = i + 1
Loop
newname=Ltrim(Str(maxvalue))
MkDir ipath & "\" & newname
End Sub
раньше, когда папок было мало, все было нормально, но сейчас уже не устраивает, ибо процесс занимает по 3-4 минуты.
я не смог обойти конструкцию "for each in", где все и стопорится.
есть какой-нибудь более простой способ?