thumbnail image

파워쿼리 데이터 소스 상대경로로 가져오는 방법

Taedi

·

2021. 2. 2. 10:09

썸네일이미지

파워쿼리는 데이터 소스를 가져올 때 기본적으로 절대경로를 이용합니다. 그렇기 때문에 엑셀 파일과 데이터 소스를 타 pc로 옮겨서 활용하려면 아래와 같은 오류 메세지가 발생하면서 데이터가 갱신되지 않는 문제가 있어 파일을 공유하거나 작업물을 다른곳에서 수정하기 난처한 상황이 가끔 발생하곤 합니다.

 

파워쿼리 데이터 소스 오류

 

이러한 문제는 데이터 소스를 상대경로로 불러오는 방법을 사용하면 쿼리를 사용하는 엑셀파일과 동일 폴더나 하위 폴더에 데이터 소스를 위치하는 것으로 어디서든 작업물을 실행시키고 수정할 수 있습니다.


|  1. 아래 수식을 파워쿼리를 이용하려는 Workbook 안의 편한 셀에 입력한다. 

=LEFT(CELL("filename",$A$1),FIND("[",CELL("filename",$A$1),1)-1)

- 수식을 입력하면 아래와 같이 파일이 위치한 경로가 나타나게 되며, 파일 위치를 변경하여 다시 실행하여보면 값이 바뀌는 것을 볼 수 있다.

엑셀 경로 확인 수식

 

 

- 데이터를 갱신할 때 해당 경로를 참조해서 가져오게 된다.

 

 

|  2. "수식 - 이름 관리자" 에서 함수를 입력한 셀을 WBPath라는 이름으로 지정한다.

- "수식 - 이름관리자" 클릭

엑셀 이름관리자 메뉴

 

 

- "새로 만들기" 클릭

엑셀 이름 관리자 새로 만들기

 

 

- 1번의 수식을 입력한 셀을 참조 대상으로 선택하고, 이름을 "WBPath"로 지정

(이름은 바꾸어도 무방하나 편의상 그대로 두시는 것을 추천)

엑셀 이름 관리자 생성

 

- 정상적으로 등록된 모습

엑셀 이름 관리자 등록 완료 화면

 

 

|  3. 쿼리 수정

데이터 소스는 csv나 xlsx에 관계없이 적용방법은 동일하다.

단, 폴더에서 가져올 때는 도우미 쿼리 또한 변경되었는지 확인이 필요하다.

파워쿼리 통합 문서에서 쿼리 생성 화면

 

- 가져 오고자 하는 데이터 파일 선택

데이터 가져오기 창

 

 

- "데이터 변환"을 클릭하여 편집기 화면으로 진입

파워쿼리 데이터 탐색 화면

 

 

- 상단의 "보기 - 고급 편집기" 클릭

파워쿼리 고급 편집기 메뉴

 

 

- 아래와 같이 데이터 소스가 절대경로로 지정되어 있는 것을 확인할 수 있으며 이 부분을 수정

파워쿼리 고급 편집기 메뉴 진입

 

 

- 아래의 줄로 수정

(두번째 줄의 data\data.xlsx는 파일 경로나 파일 명에 따라 임의로 수정해야하는 부분)

    WBPath = Excel.CurrentWorkbook(){[Name="WBPath"]}[Content]{0}[Column1],
    FullPathToFile1 = WBPath & "data\data.xlsx",
    원본 = Excel.Workbook(File.Contents(FullPathToFile1), null, true),

 

 

- 변경이 완료 된 모습, "완료" 클릭

파워쿼리 고급 편집기 수정 완료 화면

 

 

- 기타 쿼리 수정 완료 후, "로드"

파워쿼리 닫기 및 로드 버튼 클릭

 

 

|  4. 완료

과정을 모두 완료하면 폴더가 변경되더라도 쿼리가 정상적으로 갱신되는 것을 확인할 수 있다.

파워쿼리 갱신 완료 화면

 

 

 

 

 

 

 

파워쿼리_상대경로.zip
0.16MB

반응형

티스토리 아이디로 코멘트를 남기려면

여기를 눌러주세요!

0 Comments

닫기 아이콘
사이드 프로필 배경이미지
아바타 이미지

Taedi's Log

#태디 #코딩린이

자습한 내용을 기록하는 공간이라 다소 먼 길로 돌아가는 방법들이 존재할 수 있습니다🐹 Python, Web에 관심을 갖기 시작했습니다🐶