부가기능으로 Google Sheets 확장

Google Sheets는 실시간 공동작업과 데이터를 시각화, 처리, 소통하는 강력한 도구가 포함된 클라우드 기반 스프레드시트 솔루션입니다.

맞춤설정된 워크플로 개선사항을 빌드하고, 서드 파티 시스템에 연결하고, Sheets 데이터를 다른 Google Workspace 애플리케이션 (예: Google Slides)과 통합하는 부가기능으로 Sheets를 확장할 수 있습니다.

Google Workspace Marketplace에서 다른 사용자가 빌드한 Sheets 부가기능을 확인할 수 있습니다.

취할 수 있는 조치

다음은 Google Sheets를 확장하는 부가기능으로 할 수 있는 몇 가지 작업입니다.

  • 내장된 Apps Script 스프레드시트 서비스를 사용하여 Google Sheets 스프레드시트에서 데이터를 읽고, 수정하고, 시각화하고, 형식을 지정할 수 있습니다. 또한 이 서비스를 통해 조건부 서식과 데이터 유효성 검사 규칙을 만들고 수정할 수 있습니다.
  • Apps Script 고급 Sheets 서비스를 사용하여 Google Sheets API에 직접 액세스할 수 있습니다.
  • 표준 HTML 및 CSS를 사용하여 맞춤 메뉴를 만들고 여러 맞춤 대화상자 및 사이드바 인터페이스를 정의할 수 있습니다.
  • 부가기능에 커스텀 함수 정의를 포함할 수 있습니다.
  • 특정 트리거 이벤트가 발생할 때 지정된 함수를 실행하는 부가기능 트리거를 사용할 수 있습니다.

Sheets 부가기능은 Apps Script를 사용하여 빌드됩니다. Apps Script로 Google Sheets에 액세스하고 이를 관리하는 방법을 자세히 알아보려면 Google Sheets 확장을 참고하세요.

시트 구조

Google Sheets 스프레드시트는 하나 이상의 시트로 구성됩니다. 각 시트는 기본적으로 텍스트, 숫자, 링크 또는 기타 값을 저장할 수 있는 셀의 2D 그리드입니다. 인접한 셀 그룹을 범위라고 합니다.

Apps Script 스프레드시트 서비스는 Sheets의 조직 구조를 나타내는 여러 클래스(예: SheetRange)를 제공합니다. 이러한 클래스를 사용하여 Sheets 데이터와 동작을 읽고 수정할 수 있습니다.

트리거

Apps Script 트리거를 사용하면 스프레드시트를 열거나 부가기능을 설치할 때와 같이 특정 조건이 충족될 때 스크립트 프로젝트에서 지정된 함수를 실행할 수 있습니다.

Sheets 부가기능과 함께 사용할 수 있는 트리거와 사용 시 적용되는 제한사항에 관한 자세한 내용은 부가기능 트리거를 참고하세요.

커스텀 함수

Google Sheets에는 Google Sheets 셀 내에서 호출할 수 있는 SUMAVERAGE와 같은 여러 기본 제공 함수가 있습니다. Sheets 부가기능은 이러한 내장 함수를 보완하기 위해 추가 맞춤 함수를 정의할 수 있습니다. 사용자가 부가기능을 설치하면 부가기능에 포함된 정의된 맞춤 함수를 즉시 사용할 수 있습니다. 부가기능이 맞춤 함수 정의로만 구성될 수 있습니다. 맞춤 함수 정의는 주로 정의가 포함된 부가기능을 게시하여 다른 사용자와 공유됩니다.

부가기능 맞춤 함수 만들기

부가기능 스크립트 프로젝트에 정의된 모든 함수를 맞춤 함수로 사용할 수 있습니다. 함수가 구현되고 부가기능이 설치되면 다른 기본 제공 Sheets 함수와 마찬가지로 맞춤 함수를 호출할 수 있습니다. Sheets 셀에 =를 입력한 다음 함수 이름과 필요한 매개변수를 입력합니다. 오류가 없으면 함수에서 반환된 결과가 시트 셀에 배치되고 필요에 따라 인접 셀로 오버플로됩니다.

부가기능에서 맞춤 함수를 만들 때는 다음과 같은 일반 맞춤 함수 가이드라인을 따라야 합니다.

또한 부가기능에 정의된 맞춤 함수에는 몇 가지 특별한 고려사항이 있습니다.

  • 함수의 이름을 지정할 때는 부가기능의 이름과 관련된 고유한 이름을 지정하세요. 설치된 두 개 이상의 부가기능이 동일한 이름의 맞춤 함수를 정의하는 경우 사용자는 그중 하나만 사용할 수 있습니다.
  • 부가기능은 제공하는 맞춤 함수를 명확하게 전달해야 합니다. Apps Script에서 사용자에게 자동 완성 정보를 표시할 수 있도록 맞춤 함수에 정확한 JSDoc 주석을 제공해야 합니다. 또한 부가기능 자체 또는 부가기능 지원 웹페이지에 맞춤 함수에 관한 추가 문서를 제공하는 것이 좋습니다.
  • 30초 이내에 완료되지 않는 맞춤 함수는 Internal error executing the custom function 오류와 함께 실패합니다. 맞춤 함수에서 처리하는 양을 제한하여 우수한 사용자 환경을 구축합니다. 가능한 경우 함수를 최적화합니다.
  • 맞춤 함수는 승인이 필요한 Apps Script 서비스를 사용할 수 없으며, 이를 시도하면 You do not have permission to call X service 오류가 발생하여 실패합니다. 맞춤 함수에서는 허용된 서비스만 사용하세요.
  • 시트의 각 맞춤 함수로 인해 Apps Script 서버가 별도로 호출됩니다. 사용자가 너무 많은 셀에서 맞춤 함수를 사용하려고 하면 함수가 느리게 실행될 수 있습니다. 이를 완화하려면 맞춤 함수를 최대한 간단하게 유지하세요. 함수가 복잡하거나 확장된 처리를 실행해야 하는 경우 맞춤 함수를 사용하지 마세요. 대신 메뉴 항목, 대화상자 또는 사이드바 상호작용을 통해 해당 기능을 제공하세요.

Sheets 매크로

매크로를 사용하면 Google Sheets에서 수행한 작업을 기록하고 나중에 단축키로 반복할 수 있습니다. 스프레드시트에서 매크로를 만들면 해당 스프레드시트에 바인딩된 Apps Script 프로젝트에 매크로 함수로 추가됩니다. 매크로에 대한 자세한 내용은 Google Sheets 매크로를 참고하세요.

안타깝게도 Sheets 매크로는 부가기능과 함께 배포할 수 없습니다. 부가기능의 매니페스트에 매크로 정의를 포함하면 해당 부가기능의 사용자는 이를 사용할 수 없습니다.