본문 바로가기
구글스프레드시트

[구글스프레드시트] Importrange를 통해 다른 문서의 정보를 참조

by datatribe 2025. 2. 3.

엑셀에서 다른 파일의 데이터를 참조하기 위해서는 저장된 컴퓨터의 경로와 파일명 그리고 탭 이름과 범위를 이용하면 쉽게 참조가 가능합니다.

엑셀에서 다른 파일의 정보를 참조하는 수식의 예

헌데, 구글스프레드시트의 경우는 웹기반이라 우선 저장된 컴퓨터의 경로라는 것이 존재하지 않습니다. 사실 경로는 커녕 어디에 저장되는지 조차 알 수가 없죠...

구글스프레드시트의 경우 웹 기반이기 때문에 이용자의 로컬 컴퓨터에 저장되는 엑셀과는 다르게 각각의 파일 마다 웹주소를 할당 받게 됩니다. (엄밀하게 이야기 하자면 탭 단위로 웹주소가 생성이 됩니다)

그리고 이러한 웹 주소에는 각각의 파일을 호출할 수 있는 키 값을 포함하게 있습니다.

위 스프레드시트의 예를 들어보자면 TEST 라는 스프레드시트는 https://docs.google.com/spreadsheets/d/16GMxINGN44s5XmVwqfO7wwfqq931eBr0WskKBNUFH0k/edit?gid=0#gid=0 의 URL을 사용하고 있습니다.

여기에서 해당 파일을 호출 할 수 있는 키 값은 /d/ 이후의 16GMxINGN44s5XmVwqfO7wwfqq931eBr0WskKBNUFH0k 입니다.

이 값을 이용하여 다른 스프레드시트에서 본 TEST 라는 시트의 정보를 참조하는 것입니다. 그렇다면 위 키 값을 엑셀과 동일한 컨셉으로 사용할 수 있을까요?

엑셀에서는 다른 시트의 경로를 입력하면 별다른 수식 없이 다른 시트의 정보를 참조할 수 있었으나, 구글 스프레드시트에서는 죄송스럽지만 그렇게 간단하지 않습니다. 바로 Importrange 라는 수식을 활용해야만 다른 시트의 정보를 참조할 수 있는데요, 수식의 문법은 하기와 같습니다.

=importrange("문서의 키값","탭이름!범위")

위의 TEST 예에서 만약 도리스의 실적인 100을 다른 시트에서 불러오고 싶다면 아마도 시트1!C3 주소를 참조해야 할 것입니다. (해당 시트의 탭 이름은 시트1 입니다)

따라서 아래와 같이 수식을 입력하게 된다면 다른 시트에서 도리스의 실적인 100을 참조할 수 있을 것입니다.

=importrange("16GMxINGN44s5XmVwqfO7wwfqq931eBr0WskKBNUFH0k","시트1!D3")

이해되시나요? 다른 스프레드시트를 만들어 위 수식을 적용해보면 아래와 같은 상황이 연출됩니다.

#REF 라는 에러 메세지가 출력되며 위와 같이 권한을 부여 해달라는 메세지 창이 뜹니다. 웹 상에 떠 있는 파일이니 만큼 보안 관리를 해야 한다는 의미이겠죠?

여기에서 "엑세스 허용"을 클릭하게 되면 비로소 아래와 같이 참조가 완료됩니다.

헌데 막상 엑세스를 허용하고 나니 2025 라는 값이 뜨는데요, 위 수식을 참조해보시면 제가 오타를 내서 시트!A3 를 참조한 사실을 확인하실 수 있습니다.

지금은 단일 셀만을 참조하였는데, 만약 범위를 참조해야 한다면 어떻게 해야 할까요?

위의 원본의 범위는 시트1!A3:D6까지 표의 범위가 존재하는군요. 한번 참조 파일의 수식을 하기와 같이 수정해보도록 하겠습니다.

=importrange("16GMxINGN44s5XmVwqfO7wwfqq931eBr0WskKBNUFH0k","시트1!A3:D6")

실행해보면 아래와 같이 출력됩니다.

아쉽게도 셀의 값들은 불러오지만 서식은 불러오지 못하는 군요.

만약 불러온 값을 참조내에서 수정하게 되면 어떠한 일이 발생할까요?

위 이미지를 보시면 D6에 "수정" 이라는 단어를 입력해보았습니다.

수식을 입력한 B3 셀에 #REF! 라는 메세지가 출력되는군요. 즉, 불러온 값은 수정이 불가하다는 의미입니다.

구글스프레드시트에서 다른 시트의 값을 참조하기 위한 Importrange는 엑셀에서 Sum 수식 만큼 유용하게 사용되는 수식이니만큼 여러분들은 위 수식의 문법을 숙지하고 연습하시어 본인의 수식으로 반드시 만드셔야 할 것입니다.

감사합니다.