나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내
작성자:  

 루아흐뉴마 (ruahneuma)

추천:  2
파일:     조회:  3186
제목:   [RE]엑셀에서 탐색기 실행 후 파일정보 리스트로 가져오기 샘플 도움 요청
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

 - 엑셀 버전(95,97,2000,xp,2003,2007):

* 아래줄에 질문을 작성하세요 >>

안녕하세요?  제목 그대로입니다.

구현 내용: 엑셀에서 탐색기를 실행후 폴더를 선택하면 
           폴더 밑의 파일과 또 하위폴더가 존재하면 해당 폴더 밑에 
           파일을 가져와서 리스트로 뿌리고자 합니다

현재까지 찾은 정보: 
           VBA에서 Shell "explorer.exe", 1을 수행하면 
           탐색기가 수행되는 것은 확인하였습니다

이와 비슷한 샘플이나 탐색기에서 선택된 폴더를 어떻게
리턴받는지 아이디어를 제공해 주시면 감사하겠습니다.

답변에 미리 감사드립니다.
==============[목수아들님 글에 대한 답변입니다]==============


저도 Shell은 다룰 줄 몰라서 아는 한도 내에서만 알려드립니다.
아래 방식은 엑셀 VB에 내장된 폴더 선택 대화창을 불러오고,
선택한 폴더의 경로를 따내는 코드입니다.

Sub files_()

Dim folderPath As String '폴더 경로변수

'폴더 선택 대화상자
With Application.FileDialog(msoFileDialogFolderPicker) 
'대화상자 Open
  .Show                                                
  
  '선택한 폴더가 없으면
  If .SelectedItems.Count < 1 Then                     
  
    '매크로 종료
    Exit Sub                                           
  Else
    folderPath = .SelectedItems(1)
  End If
End With

Debug.Print folderPath '폴더경로 출력

End Sub




여기서 폴더 내의 파일을 입력받으려면 VB의 Dir 함수를 아셔야 합니다.
(작동 방식이 독특하기 때문에)
(Dir 함수는 폴더나 폴더 내 파일 명칭을 받아옵니다.)

제가 코드를 다 작성해드리기보다는

원하는 사항을 참고할 만한 블로그 주소를 안내해 드리겠습니다.
(알 만한 분들은 모두 아시는 사이트일겁니다.)

니꾸님의 블로그 : https://blog.naver.com/rosa0189/60158944220
(하위 폴더까지 모두 순환하는 기본 코드)

또 제가 운영하는 사이트에서 다루는 유사한 내용이니 참고 바랍니다.
http://ruahneuma.tistory.com/35
(하위 폴더를 순환하는 코드는 없습니다.)
(니꾸님의 블로그를 참고하여 제작한 코드입니다.)
 
[불량 게시물 신고]  
        
  

작성일 : 2018-05-17(23:11)
최종수정일 : 2018-05-17(23:12)
 


 ◎ 관련글

  제 목   작성자   날짜
엑셀에서 탐색기 실행 후 파일정보 리스트로 가져오기 샘플 도움 요청 목수아들 2018-05-17
[RE]엑셀에서 탐색기 실행 후 파일정보 리스트로 가져오기 샘플 도움 요청 루아흐뉴마 2018-05-17