반응형
Sub ListAllFilesInFolder()
Dim FileSystem As Object
Dim MainFolder As Object
Dim SubFolder As Object
Dim File As Object
Dim RowNum As Long
Dim FolderPath As String
' 대상 폴더 경로를 입력합니다.
FolderPath = "C:\YourFolderPath" ' <- 여기에 원하는 폴더 경로 입력
' 파일 시스템 개체를 생성합니다.
Set FileSystem = CreateObject("Scripting.FileSystemObject")
Set MainFolder = FileSystem.GetFolder(FolderPath)
' 초기 시작 행 설정
RowNum = 2
' 헤더 작성
With ThisWorkbook.Sheets(1)
.Cells(1, 1).Value = "Folder Path"
.Cells(1, 2).Value = "File Name"
.Cells(1, 3).Value = "File Path"
End With
' 폴더 내 파일 리스트 생성
Call ListFilesInSubfolders(MainFolder, RowNum)
' 개체 메모리 해제
Set FileSystem = Nothing
Set MainFolder = Nothing
End Sub
Sub ListFilesInSubfolders(Folder As Object, ByRef RowNum As Long)
Dim SubFolder As Object
Dim File As Object
' 현재 폴더의 파일 목록 기록
For Each File In Folder.Files
ThisWorkbook.Sheets(1).Cells(RowNum, 1).Value = Folder.Path
ThisWorkbook.Sheets(1).Cells(RowNum, 2).Value = File.Name
ThisWorkbook.Sheets(1).Cells(RowNum, 3).Value = File.Path
RowNum = RowNum + 1
Next File
' 하위 폴더 탐색
For Each SubFolder In Folder.Subfolders
Call ListFilesInSubfolders(SubFolder, RowNum)
Next SubFolder
End Sub
첫 번째 시트에
모든 하위 폴더를 포함하여 존재하는 모든 파일이름을 엑셀에 작성해 줍니다.
반응형
'엑셀 > VBA' 카테고리의 다른 글
VBA로 특정 열 중복 데이터 체크하기 (2) | 2024.11.09 |
---|---|
VBA에서 엑셀파일(워크북)을 변수로 지정하기 (0) | 2024.07.06 |
VBA에서 엑셀 조건부 서식 모두 지우기 및 중복값 규칙 만들기 (0) | 2024.06.17 |
VBA 사진 추가하는 방법 (Shapes.AddPicture) (1) | 2024.04.07 |
Selenium에서 Select 선택 된 값 불러오기 (0) | 2024.03.03 |
댓글