[엑셀/VBA] 현재 엑셀 파일의 경로 구하기
(아래 내용은 오피스 365의 엑셀에서 테스트 되었습니다.)
현재 작업 중인 엑셀 파일의 경로를 구하는 몇 가지 방법은 아래와 같습니다.
.Path
.Path
는 현재 파일의 경로를 구하기 위해 가장 흔하게 사용되는 방법입니다. 사용 방법도 아주 간단합니다. 아래와 같이 Dir
이라는 변수를 만들고 그 변수에 현재 작업 중인 엑셀 파일의 디렉터리 경로를 담을 수 있습니다.
Dim Dir as String
Dir = ThisWorkbook.path
사용법이 간단한 .Path
는 아래와 같은 특징을 가지고 있습니다.
- 현재 파일이 아직 저장되지 않은 통합 문서라면 아무 것도 반환되지 않음
- 파일 주소의 경로 끝부분에
/
(슬래시) 또는\
가 붙지 않음 - OneDrive에 저장된 파일의 경우 로컬 드라이브 경로가 아닌
http://
로 시작하는 온라인 경로를 반환함
CurDir()
찾아보니 CurDir()
이라는 내장 함수 역시 .Path
와 같은 역할을 한다는 것을 알게 되었습니다.
역시나 사용법은 간단합니다.
Dim Dir as String
Dir = CurDir()
위 .Path
의 예제와 마찬가지로 Dir
이라는 변수를 만들고 그 변수에 현재 파일의 경로를 담는 간단한 과정입니다. CurDir()
은 아래와 같은 특징을 가지고 있습니다.
.Path
와 마찬가지로 경로 끝부분에\
가 붙지 않음- 함수의 투입 변수로 드라이브를 지정할 수 있음(예시:
CurDir("C")
) - OneDrive에 저장된 파일의 경우 로컬 드라이브 경로가 아닌
System32
폴더를 반환함
.Path
또는 CurDir()
모두 사용법이 간단하기 때문에 본인 취향에 맞게 어떤 것을 사용해도 무방 할 것 같습니다만, 원드라이브에 저장된 파일을 이용하는 분들은 제대로 된 경로가 표시되지 않기 때문에 사용에 주의를 기울여야 하겠습니다.
마이크로소프트의 원드라이브에 저장된 파일에서 위 두가지 방법을 이용해 제대로된 로컬 경로를 구하는 방법은 추가적으로 포스팅 하겠습니다.
끝.
댓글 남기기