Sub TEST1()
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
Dim A, B
A = "C:\Users\User\Desktop\DATA"
'フォルダ内のファイルをループ
For Each B In FSO.GetFolder(A).Files
Debug.Print B 'ファイルパスを取得
Next
End Sub
Sub TEST2()
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
Dim A, B
A = "C:\Users\User\Desktop\DATA"
'フォルダ内のサブフォルダをループ
For Each B In FSO.GetFolder(A).SubFolders
Debug.Print B 'サブフォルダのパスを取得
Next
End Sub
Sub TEST3()
Dim A
A = "C:\Users\User\Desktop\DATA"
Call TEST4(A)
End Sub
Sub TEST4(A)
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
Dim B
'フォルダ内のサブフォルダをループ
For Each B In FSO.GetFolder(A).SubFolders
Debug.Print B 'サブフォルダのパスを取得
Call TEST4(B) '再帰する
Next
End Sub
Sub TEST5()
Dim A
A = "C:\Users\User\Desktop\DATA"
Call TEST6(A)
End Sub
Sub TEST6(A)
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
Dim B
'フォルダ内のファイルをループ
For Each B In FSO.GetFolder(A).Files
Debug.Print B 'ファイルパスを取得
Next
Dim C
'フォルダ内のサブフォルダをループ
For Each C In FSO.GetFolder(A).SubFolders
'再帰する
Call TEST6(C)
Next
End Sub
Sub TEST7()
Dim A
A = "C:\Users\User\Desktop\DATA"
i = 1
Call TEST8(A, i)
End Sub
Sub TEST8(A, i)
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
With ActiveSheet
Dim B
'フォルダ内のファイルをループ
For Each B In FSO.GetFolder(A).Files
i = i + 1
.Cells(i, 1) = A 'フォルダパス
.Cells(i, 2) = B 'ファイルパス
.Cells(i, 3) = FSO.GetFileName(B) 'ファイル名
.Cells(i, 4) = FSO.GetExtensionName(B) '拡張子
.Cells(i, 5) = FSO.GetFile(B).Size 'サイズ
.Cells(i, 6) = FSO.GetFile(B).DateCreated '作成日時
.Cells(i, 7) = FSO.GetFile(B).DateLastModified '更新日時
.Cells(i, 8) = FSO.GetFile(B).DateLastAccessed 'アクセス日時
Next
Dim C
'フォルダ内のサブフォルダをループ
For Each C In FSO.GetFolder(A).SubFolders
i = i + 1
.Cells(i, 1) = C. 'フォルダパス
.Cells(i, 5) = FSO.GetFolder(C).Size 'サイズ
.Cells(i, 6) = FSO.GetFolder(C).DateCreated '作成日時
.Cells(i, 7) = FSO.GetFolder(C).DateLastModified '更新日時
.Cells(i, 8) = FSO.GetFolder(C).DateLastAccessed 'アクセス日時'再帰する
Call TEST8(C, i)
Next
End With
End Sub