본문 바로가기
엑셀/엑셀 VBA

폴더 내에 있는 파일명들 불러오는 방법

by 한국수달보호협회장 2024. 5. 15.

 

 

 

https://separang.tistory.com/65

 

[엑셀 VBA] Dir을 사용하여, 폴더 내 파일명 불러오기.

윤 대리다. 간지 나는 메서드가 있어서 공유한다. 그동안 그냥 파일 열 때 [GetOpenFileName] 만 주구장창 썼는데 [Dir]을 통해 좀 더 우아한 매크로를 만들 수 있을 거 같아서 간단히 소개하고자 한다.

separang.tistory.com

 

Sub test()

Dim File_Name As String
Dim Folder As String

 Folder = ThisWorkbook.Path
 File_Name = Dir(Folder & "\" & "*.xls*")
 
 Do
  
  Cells(Rows.Count, 1).End(3)(2) = File_Name
  File_Name = Dir

 Loop While File_Name <> ""
 
End Sub

 

 

***************** File_Name = Dir 이게 어떻게 되는거지?

 

→Dir함수는 지정된 폴더에 찾은 파일이 여러개면 순서대로 파일명을 전달해주는데, 이렇게 순환문 내에서 별도의 인수 없이 사용하면 폴더 내 파일명을 하나씩 뱉어낸다 (지역창을 키고 확인하면 이해가 빠름)

 

그냥 직접실행창에 ?Dir 하면 값이 안나옴(에러), 순환문내에서만 저런 기능을한다.

 

 

 

 

또 다른 코드

 

 

https://stat-and-news-by-daragon9.tistory.com/entry/%EC%97%91%EC%85%80VBA-%ED%8C%8C%EC%9D%BC-%EB%AA%A9%EB%A1%9D%EB%A6%AC%EC%8A%A4%ED%8A%B8-%EB%A7%8C%EB%93%A4%EA%B8%B0Dir-%ED%95%A8%EC%88%98

 

[엑셀VBA] 파일 목록(리스트) 만들기(Dir 함수)

안녕하십니까 춤추는초코칩입니다. 업무 중에 필요한 엑셀VBA를 기록하고 있습니다. 오늘은 폴더 내에 파일 목록과 파일 갯수를 가져오는 매크로를 만들어 보겠습니다. Temp 폴더안에 4개 엑셀 자

stat-and-news-by-daragon9.tistory.com