Vba: 폴더의 파일을 나열하는 방법


VBA에서 다음 방법을 사용하여 폴더의 파일을 나열할 수 있습니다.

방법 1: 폴더의 모든 파일 나열

 SubListFiles ()

Dim i As Integer
Dim oFSO As Object
Dim oFolder As Object
Dim objFile As Object

Set oFSO = CreateObject("Scripting.FileSystemObject")

Set oFolder = oFSO.GetFolder("C:\Users\bob\Documents\current_data")

For Each objFile In oFolder.Files
    Cells(i + 1, 1) = objFile.Name
    i = i + 1
Next objFile

End Sub

방법 2: 폴더의 .xlsx 파일만 나열

 SubListFiles ()

Dim i As Integer
Dim oFSO As Object
Dim oFolder As Object
Dim objFile As Object

Set oFSO = CreateObject("Scripting.FileSystemObject")

Set oFolder = oFSO.GetFolder("C:\Users\bob\Documents\current_data")

For Each objFile In oFolder.Files
    If Right(objFile.Name, 4) = "xlsx" Then
        Cells(i + 1, 1) = objFile.Name
        i = i + 1
    End If
Next objFile

End Sub

다음 예에서는 다음 파일 경로가 있는 폴더에서 실제로 각 방법을 사용하는 방법을 보여줍니다.

  • C:\Users\bob\Documents\current_data

폴더에는 2개의 .xlsx 파일과 3개의 .csv 파일이 포함되어 있습니다.

예 1: 폴더의 모든 파일 나열

다음 매크로를 생성하여 폴더의 모든 파일을 나열할 수 있습니다.

 SubListFiles ()

Dim i As Integer
Dim oFSO As Object
Dim oFolder As Object
Dim objFile As Object

Set oFSO = CreateObject("Scripting.FileSystemObject")

Set oFolder = oFSO.GetFolder("C:\Users\bob\Documents\current_data")

For Each objFile In oFolder.Files
    Cells(i + 1, 1) = objFile.Name
    i = i + 1
Next objFile

End Sub

이 매크로를 실행하면 다음과 같은 출력이 나타납니다.

이제 폴더에 있는 모든 파일의 이름(확장자 관계없이)이 Excel 시트의 A열에 나열되어 있는 것을 볼 수 있습니다.

예 2: 폴더의 .xlsx 파일만 나열

다음 매크로를 생성하여 폴더에 .xlsx 확장자를 가진 파일만 나열할 수 있습니다.

 SubListFiles ()

Dim i As Integer
Dim oFSO As Object
Dim oFolder As Object
Dim objFile As Object

Set oFSO = CreateObject("Scripting.FileSystemObject")

Set oFolder = oFSO.GetFolder("C:\Users\bob\Documents\current_data")

For Each objFile In oFolder.Files
    If Right(objFile.Name, 4) = "xlsx" Then
        Cells(i + 1, 1) = objFile.Name
        i = i + 1
    End If
Next objFile

End Sub

이 매크로를 실행하면 다음과 같은 출력이 나타납니다.

이제 폴더에서 확장자가 .xlsx 인 파일 이름만 Excel 시트의 A열에 나열되는 것을 볼 수 있습니다.

추가 리소스

다음 자습서에서는 VBA에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

VBA를 사용하여 폴더를 만드는 방법
VBA를 사용하여 폴더를 삭제하는 방법
VBA를 사용하여 파일 이름을 바꾸는 방법
VBA를 사용하여 파일이 존재하는지 확인하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다