Получить список всех файлов в каталоге и его подкаталогах - VB

Узнай цену своей работы

Формулировка задачи:

Привет всем, не знаю как получить список всех файлов в папке и ее подпапках. Хочу посчитать эти файлы и потом копировать с прогрессбаром, но завис на подсчете. Плиииз, хелп ми! Нарыл только это:
Но здесь лишь в общем. А куда двигаться дальше я не пойму.

Решение задачи: «Получить список всех файлов в каталоге и его подкаталогах»

textual
Листинг программы
     '::: Код VBScript
 
     StartFolder="D:\Off_VBA\Г‡Г*Г¤Г*Г·ГЁ"    ' Г—ГІГ® Г±ГЄГ*Г*èðîâГ*ГІГј
     Fout="C:\list.txt"                 ' ГЉГіГ¤Г* Г§Г*ГЇГЁГ±Г*ГІГј ðåçóëüòГ*ГІ
     '::: ГЌГ*Г·Г*ëî
     Set aFso =CreateObject("Scripting.FileSystemObject")
     Set aDict=CreateObject("Scripting.Dictionary")
     Set sFld=aFso.GetFolder(StartFolder)
     Scan_Fold sFld
     Set txtOut = aFSO.CreateTextFile(Fout)
     n=aDict.Count 
     aKeys=aDict.Keys
     aItems=aDict.Items 
     For i=0 to n-1
         txtOut.WriteLine aKeys(i) & " " & aItems(i)
     Next
     txtOut.Close
     MsgBox "OK!" 
 
     '::: ÏîäïðîãðГ*ììû
     
Sub Scan_Fold(aFolder)  '::: ÑêГ*Г*èðîâГ*ГІГј ГЇГ*ГЇГЄГі
    For each fld in aFolder.SubFolders
        Set aFil=Fld.Files
        Scan_Files aFil
        Scan_Fold fld 
    Next
End Sub
 
Sub Scan_Files(Fils)    '::: ГЋГЎГ°Г*áîòГ*ГІГј ГґГ*éëû ГЇГ*ГЇГЄГЁ
    for each fil in Fils
        dFil=fil.DateCreated
        tmp=Left(Cstr(dFil),10)
        if aDict.Exists(tmp) then
           n=aDict.Item(tmp)+1
           aDict.Remove tmp
           aDict.add tmp,n
        else
           aDict.add tmp,1
        end if
    next
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.091 из 5
Похожие ответы