|
Sub 获取文件夹中所有文件的信息() '会忽略子目录
On Error Resume Next
Dim arr(), 目录 As String, mj As String, Item As Integer
目录 = CreateObject("Shell.Application").BrowseForFolder(0, "请选择文件夹", 0).Self.Path
Range("A1:E1") = Array("序号", "文件名称", "文件大小", "创建时间", "最后修改时间")
Dim wj As String
wj = Dir(目录 & "\*.*")
Do
Item = Item + 1
ReDim Preserve arr(1 To 5, 1 To Item) '重置数组并保留值
arr(1, Item) = Item '编号
arr(2, Item) = wj '文件名
arr(3, Item) = Round(FileLen(目录 & "\" & wj) / 1024, 2) & "KB" '文件大小
arr(4, Item) = CreateObject("scripting.filesystemobject").GetFile(目录 & "\" & wj).DateCreated '创建时间,只能用FSO对象来获取
arr(5, Item) = FileDateTime(目录 & "\" & wj) '最后修改时间
wj = Dir
Loop Until Len(wj) = 0 '循环,直到最后一个文件(和While...Wend语句一样)
[a2].Resize(UBound(arr, 2), 5) = WorksheetFunction.Transpose(arr) '将数组转置后导入工作表
Columns("A:E").EntireColumn.AutoFit '让单元格自动调整列宽
End Sub
|
|