2011-03-04 98 views
0

我有一個子目錄的目錄。這些子文件夾也有子文件夾。對於所有文件夾,都存在一個上次修改時間的時間戳。如何檢索文件夾層次結構中最後更新的文件夾?

例如:

Folder1中(21.01.2010)
-subfolder1(22.01.2010)
-subfolder2(2010年1月23日)
--subfolder1(2010年1月24日)
--subfolder2 (2010年1月25日)
文件夾2(2010年1月26日)
-subfolder 1(27.01.2010)

我需要的是檢查最新的 「修改日期」 的腳本。 所以輸出應該是「27.01.2010」。

我不知道如何開始......是否有一個函數可以列出所有文件夾?

也許你可以幫助我...提前謝謝你!

+0

您需要申請遞歸,請參閱:http://en.wikipedia.org/wiki/Recursion。你能舉一些你到目前爲止的代碼嗎? – 2011-03-04 09:52:56

回答

2

獲取文件夾列表和修改日期

Sub GetLastModified(folderspec) 
    Dim fs, f, f1, fc, s 
    Set fs = CreateObject("Scripting.FileSystemObject") 
    Set f = fs.GetFolder(folderspec) 
    Set fc = f.SubFolders 
    For Each f1 in fc 
     s = s & f1.Name 
     s = s & f1.DateLastModified 
     s = s & vbCrLf 
    Next 
    MsgBox s 
End Sub 

然後你只需要遍歷內找到這些文件夾所有文件夾和保持最新修改日期的記錄

1

保持模板:

dim fs, foldercollection ,filecollection, folders, files 

    Set fs=CreateObject("Scripting.FileSystemObject") 
    Set fileobject = fs.GetFolder("c:\") 

    Set foldercollection = fileobject.SubFolders 
    folders = "" 
    files = "" 
    For Each folder in foldercollection 
    folders = folders & folder.name & Chr(13) 
    Next 
    Set foldercollection=nothing 
    Set filecollection = fileobject.Files 
    For Each file in filecollection 
    files = files & file.name & Chr(13) 
    next 

    MsgBox folders & files 
相關問題