고급: 다른 스프레드시트에서 선택지 가져오기
선택지 시트는 부가기능이 읽는 유일한 곳입니다. 여러분이 A열에 선택지를, B열에 정원을 입력하면 부가기능이 신청 수를 C열에 기록합니다. Drive의 다른 어떤 것도 건드리지 않습니다.
원하는 목록이 이미 다른 스프레드시트(명단, 재고 목록, 다른 사람이 관리하는 시트 등)에 있다면 다시 입력하거나 복사할 필요가 없습니다. 수식으로 A열을 그 시트에 겨누면 양식이 그것을 따라갑니다.
수식
선택지 시트를 열고 그 질문 탭의 A2 셀을 클릭한 뒤 다음을 입력하세요.
=IMPORTRANGE("https://docs.google.com/spreadsheets/d/YOUR_SHEET_ID/edit", "Sheet1!A2:A")
URL은 원본 스프레드시트의 것으로, Sheet1!A2:A는 선택지가 들어 있는 탭과 열로 바꾸세요. 원본에 머리글 행이 있다면 범위를 2행부터 시작하세요.
처음 입력하면 셀에 #REF!와 함께 액세스 허용 안내가 나타납니다. 한 번 클릭하면 값이 나타납니다. 이 안내는 두 스프레드시트를 모두 열 수 있는 사람에게만 표시됩니다.
A1은 Options 그대로 두세요. 부가기능은 이 머리글로 탭의 형식이 온전한지 확인하며, 바뀌면 동기화가 멈춥니다.
그다음에는
달라지는 것은 없습니다. 양식은 평소 주기(사이드바를 열 때, 매시간, 응답이 제출될 때마다)로 동기화되고, 매번 그 수식이 현재 내놓는 값을 읽습니다. 원본 스프레드시트를 고치면 새 값이 다음 동기화 때 양식에 도달합니다.
정원은 한 번 더 살펴야 합니다
B열의 정원은 행으로 선택지와 짝지어집니다. B5의 숫자는 A5에 있는 선택지에 한도를 겁니다.
직접 입력한 목록은 움직이지 않으므로 평소에는 이 점이 드러나지 않습니다. 하지만 수식으로 공급되는 목록은 움직일 수 있습니다. 원본에서 행이 삽입, 삭제, 재정렬되면 선택지는 밀리는데 정원은 제자리에 남아 엉뚱한 행에 붙습니다.
안전하게 쓰는 방법은 두 가지입니다.
- 원본 목록의 행은 중간이 아니라 끝에서 더하거나 빼세요
- 순서를 바꾼 뒤에는 선택지 시트를 열어 각 정원이 여전히 알맞은 선택지 옆에 있는지 확인하세요
정원을 전혀 쓰지 않는다면 위 내용은 해당되지 않습니다.
수식이 깨졌을 때
접근 권한이 회수되거나, 원본 파일이 삭제되거나, 범위가 무효가 되면 셀은 #REF!나 #N/A 같은 오류가 됩니다.
부가기능은 그것을 양식에 기록하지 않습니다. 동기화는 멈추고, 질문은 이미 가지고 있던 선택지를 유지하며, 사이드바에는 선택지 시트를 고치라는 동기화 오류가 표시됩니다. 시트를 열어 수식을 고치고 다시 동기화하세요.
선택 도구가 아니라 수식인 이유
부가기능 안에서 외부 스프레드시트에 연결한다는 것은 그 파일들에 대한 접근 권한을 부가기능에 준다는 뜻입니다. 게다가 선택지 시트를 보고 있어도 알 수 없는 설정에 따라 그 시트의 의미가 두 가지로 갈리게 됩니다. 수식을 쓰면 규칙 하나가 언제나 참으로 유지됩니다. Options와 Capacity는 여러분의 것, Taken은 부가기능의 것이며, 부가기능은 양식용으로 직접 만든 것 외의 어떤 스프레드시트도 읽지 않습니다.
