Расширение Google Таблиц с помощью надстроек

Оптимизируйте свои подборки Сохраняйте и классифицируйте контент в соответствии со своими настройками.

Google Sheets – это облачное решение для работы с электронными таблицами, обеспечивающее совместную работу в режиме реального времени и мощные инструменты для визуализации, обработки и передачи данных.

Вы можете расширить Таблицы с помощью надстроек, которые улучшают рабочий процесс, устанавливают связь со сторонними системами и интегрируют данные Таблиц с другими приложениями Google Workspace (например, Google Slides).

Вы можете ознакомиться с надстройками для Таблиц, созданными другими пользователями, в Google Workspace Marketplace .

Что ты можешь сделать

Вот несколько вещей, которые вы можете сделать с надстройкой, расширяющей Google Sheets:

Надстройки для таблиц создаются с использованием Apps Script. Чтобы узнать больше о том, как получить доступ к Google Sheets и управлять ими с помощью Apps Script, см. Расширение Google Sheets .

Структура листа

Электронная таблица Google Sheets состоит из одного или нескольких листов. Каждый лист представляет собой двухмерную сетку ячеек, в которых можно хранить текст, числа, ссылки или другие значения. Группа из одной или нескольких соседних ячеек называется диапазоном .

Служба электронных таблиц Apps Script предоставляет несколько классов для представления организационных структур в Sheets (таких как Sheet и Range ). Вы можете использовать эти классы для чтения и изменения данных и поведения Таблиц.

Триггеры

Триггеры сценариев приложений позволяют проекту сценария выполнять указанную функцию при выполнении определенных условий, например при открытии электронной таблицы или установке надстройки.

Дополнительные сведения о том, какие триггеры можно использовать с надстройками Таблиц и какие ограничения применяются к их использованию, см. в разделе Триггеры дополнений.

Пользовательские функции

Google Sheets имеет ряд встроенных функций , таких как SUM и AVERAGE , которые можно вызывать из ячейки Google Sheet. Надстройки Таблиц могут определять дополнительные пользовательские функции в дополнение к этим встроенным функциям. Когда пользователь устанавливает надстройку, любые определенные пользовательские функции, включенные в надстройку, становятся доступными немедленно. Надстройка может состоять только из определений пользовательских функций. Определения пользовательских функций в основном передаются другим пользователям путем публикации надстройки, содержащей определения.

Создание дополнительных пользовательских функций

Любая функция, определенная в проекте сценария надстройки, может использоваться как пользовательская функция. После реализации функции и установки надстройки пользовательскую функцию можно вызывать так же, как и любую другую встроенную функцию Таблиц: в ячейке Листа введите = , за которым следует имя функции и любые необходимые параметры. Если ошибок нет, возвращаемый функцией результат помещается в ячейку Листа, при необходимости перетекая в соседние ячейки.

При создании пользовательских функций в дополнении вы должны следовать общим рекомендациям по пользовательским функциям:

Кроме того, пользовательские функции, определенные в надстройках, имеют некоторые особенности:

  • При именовании своей функции постарайтесь создать уникальное имя, возможно, связанное с названием вашего дополнения. Если два или более установленных дополнения определяют пользовательские функции с одинаковым именем, пользователи могут использовать только одно из них.
  • Ваше дополнение должно четко сообщать, какие пользовательские функции оно предоставляет. Не забудьте предоставить точные комментарии JSDoc для ваших пользовательских функций, чтобы Apps Script мог предоставить пользователю информацию автозаполнения . Кроме того, рассмотрите возможность предоставления дополнительной документации по пользовательским функциям либо в самой надстройке, либо на веб-странице поддержки надстройки.
  • Пользовательские функции, которые не завершаются менее чем за 30 секунд, завершаются ошибкой с Internal error executing the custom function . Создайте хороший пользовательский интерфейс, ограничив объем обработки, которую вы выполняете в пользовательской функции. Оптимизируйте функцию там, где это возможно.
  • Пользовательские функции не могут использовать сервисы Apps Script, требующие авторизации, и завершаются с ошибкой You do not have permission to call X service при попытке сделать это. Используйте только разрешенные услуги в своей пользовательской функции.
  • Каждая пользовательская функция на листе приводит к отдельному вызову серверов сценариев приложений. Если пользователь попытается использовать пользовательские функции в слишком большом количестве ячеек, функции могут выполняться медленно. Чтобы смягчить это, делайте свои пользовательские функции как можно более простыми. Если вам нужна функция для выполнения сложной или расширенной обработки, не используйте пользовательскую функцию — вместо этого предоставьте эту функцию через пункт меню, диалоговое окно или взаимодействие с боковой панелью.

Макросы таблиц

Макросы позволяют записывать действия, выполняемые в Google Таблицах, и повторять их позже с помощью сочетания клавиш. Когда макрос создается на листе, он добавляется как функция макроса в проект Apps Script, привязанный к этому листу. Дополнительные сведения о макросах см. в разделе Макросы Google Таблиц .

К сожалению, макросы Таблиц нельзя распространять с надстройками. Если вы включите определение макроса в манифест надстройки, оно будет недоступно для пользователей этой надстройки.