스크립트는 독립형 스크립트가 아닌 Google Sheets, Docs, Slides, Forms 파일에 바인딩됩니다. 바인딩된 스크립트가 첨부된 파일을 '컨테이너'라고 합니다. 바인딩된 스크립트는 Google Drive에 표시되지 않고 결합된 파일에서 분리할 수 없으며 상위 파일에 대한 몇 가지 특별한 권한을 얻는다는 점을 제외하면 일반적으로 독립형 스크립트처럼 작동합니다.
스크립트는 Google Sites에 결합될 수도 있지만 이러한 스크립트는 거의 항상 웹 앱으로 배포됩니다. 드문 경우이긴 하지만 Google Sheets, Docs, Slides 또는 Forms와 연결된 스크립트는 웹 앱이 될 수도 있습니다.
바인딩된 스크립트 만들기
Google Docs, Sheets, Slides
Google Docs, Sheets 또는 Slides에서 바인딩된 스크립트를 만들려면 Docs에서 문서, Sheets에서 스프레드시트 또는 Slides에서 프레젠테이션을 열고 확장 프로그램 > Apps Script를 클릭합니다. 나중에 스크립트를 다시 열려면 동일한 작업을 실행하거나 Apps Script 대시보드에서 스크립트를 엽니다.
Google Forms
Google Forms에서 결합된 스크립트를 만들려면 양식을 열고 더보기 > 스크립트 편집기를 클릭합니다. 나중에 스크립트를 다시 열려면 동일한 작업을 실행하거나 Apps Script 대시보드에서 스크립트를 엽니다.
특수 메서드
바인딩된 스크립트는 독립 실행형 스크립트에서 호출할 수 없는 몇 가지 메서드를 호출할 수 있습니다.
getActiveSpreadsheet()
,getActiveDocument()
,getActivePresentation()
,getActiveForm()
는 바인딩된 스크립트에서 파일의 ID를 참조하지 않고 상위 파일을 참조하도록 허용합니다.getUi
를 사용하면 바인딩된 스크립트에서 상위 파일의 사용자 인터페이스에 액세스하여 커스텀 메뉴, 대화상자, 사이드바를 추가할 수 있습니다.- Google Sheets에서는
getActiveSheet()
,getActiveRange()
,getActiveCell()
를 통해 스크립트가 사용자의 현재 시트, 선택된 셀 범위 또는 선택된 개별 셀을 결정합니다.setActiveSheet(sheet)
및setActiveRange(range)
는 스크립트가 선택 항목을 변경하도록 합니다. - Google Docs에서
getCursor()
및getSelection()
를 사용하면 스크립트가 사용자의 커서 또는 선택한 텍스트의 위치를 결정할 수 있습니다.setCursor(position)
및setSelection(range)
는 스크립트가 이러한 위치를 변경하도록 합니다.
자세한 내용은 Google 스프레드시트 확장 가이드 또는 Google 문서 확장 가이드를 참고하세요.
맞춤 메뉴, 대화상자 및 사이드바
바인딩된 스크립트는 맞춤 메뉴와 대화상자 또는 사이드바를 추가하여 Google Sheets, Docs, Forms를 맞춤설정할 수 있습니다. 하지만 스크립트는 열려 있는 파일의 현재 인스턴스에 대해서만 사용자 인터페이스와 상호작용할 수 있습니다. 즉, 한 문서에 바인딩된 스크립트는 다른 문서의 사용자 인터페이스에 영향을 줄 수 없습니다.
부가기능
부가기능은 Gmail, Google Sheets, Docs, Slides, Forms 내에서 실행됩니다. 바인딩된 스크립트 또는 독립형 스크립트를 개발하여 전 세계에 공유하려는 경우 Apps Script를 사용하면 스크립트를 부가기능으로 게시하여 다른 사용자가 부가기능 스토어에서 스크립트를 설치할 수 있도록 할 수 있습니다.
트리거
바인딩된 스크립트는 특수 onOpen()
함수와 같은 간단한 트리거를 사용할 수 있습니다. 이 트리거는 수정 액세스 권한이 있는 사용자가 파일을 열 때마다 자동으로 실행됩니다. 모든 유형의 스크립트와 마찬가지로 설치 가능한 트리거를 사용할 수도 있습니다.
커스텀 함수
맞춤 함수는 Google Sheets에 바인딩된 스크립트의 함수로, 구문 =myFunctionName()
를 사용하여 셀에서 직접 호출합니다. 따라서 맞춤 함수는 커스텀 함수의 동작을 직접 정의한다는 점을 제외하면 AVERAGE
또는 SUM
와 같은 Sheets에 있는 수백 개의 기본 제공 함수와 유사합니다.
바인딩된 스크립트에 대한 액세스
컨테이너를 수정할 권한이 있는 사용자만 결합된 스크립트를 실행할 수 있습니다. 보기 액세스 권한만 있는 공동작업자는 스크립트 편집기를 열 수 없지만, 컨테이너 파일의 사본을 만들면 사본의 소유자가 되어 스크립트의 사본을 보고 실행할 수 있습니다.
스크립트의 컨테이너 파일을 공유하는 방법을 알아보려면 Google 드라이브에서 파일 공유를 참고하세요.