Google Таблицы — это облачное решение для работы с электронными таблицами с возможностью совместной работы в режиме реального времени и мощными инструментами для визуализации, обработки и передачи данных.
Вы можете расширить возможности Таблиц с помощью надстроек, которые позволяют оптимизировать рабочий процесс, установить подключение к сторонним системам и интегрировать данные Таблиц с другими приложениями Google Workspace (например, Google Slides).
Вы можете увидеть дополнения к Таблицам, созданные другими пользователями, в Google Workspace Marketplace .
Что вы можете сделать
Вот несколько вещей, которые вы можете сделать с помощью надстройки, расширяющей возможности Google Таблиц:
- Вы можете читать, редактировать, визуализировать и форматировать данные в таблицах Google Sheets с помощью встроенной службы Apps Script Spreadsheet . Служба также позволяет создавать и изменять условное форматирование и правила проверки данных.
- Для прямого доступа к API Google Таблиц можно использовать расширенную службу таблиц Apps Script.
- Вы можете создавать пользовательские меню и определять несколько пользовательских диалоговых окон и интерфейсов боковых панелей, используя стандартный HTML и CSS.
- Вы можете включить в свое дополнение пользовательские определения функций .
- Вы можете использовать дополнительные триггеры , которые запускают определенные функции при возникновении определенных событий-триггеров.
Дополнения к таблицам созданы с использованием Apps Script. Чтобы узнать больше о том, как получить доступ и управлять Google Sheets с помощью Apps Script, см. Расширение Google Sheets .
Структура листа
Таблица Google Sheets состоит из одного или нескольких листов. Каждый лист по сути представляет собой двумерную сетку ячеек, в которой может храниться текст, числа, ссылки или другие значения. Группа из одной или нескольких смежных ячеек называется диапазоном .
Служба Apps Script Spreadsheet предоставляет несколько классов для представления организационных структур в Sheets (например, Sheet
и Range
). Вы можете использовать эти классы для чтения и изменения данных и поведения Sheets.
Триггеры
Триггеры скриптов приложений позволяют проекту скрипта выполнять указанную функцию при соблюдении определенных условий, например при открытии электронной таблицы или при установке надстройки.
Дополнительную информацию о том, какие триггеры можно использовать с надстройками Таблиц и какие ограничения применяются к их использованию, см. в разделе «Триггеры надстроек».
Пользовательские функции
В Google Sheets есть ряд встроенных функций, таких как SUM
и AVERAGE
, которые можно вызывать из ячейки Google Sheet. Надстройки для таблиц могут определять дополнительные пользовательские функции для дополнения этих встроенных функций. Когда пользователь устанавливает надстройку, все определенные пользовательские функции, включенные в надстройку, становятся доступными немедленно. Надстройка может состоять только из определений пользовательских функций. Определения пользовательских функций в первую очередь передаются другим путем публикации надстройки, содержащей определения.
Создание дополнительных пользовательских функций
Любая функция, определенная в проекте скрипта надстройки, может использоваться как пользовательская функция. После реализации функции и установки надстройки вы можете вызывать пользовательскую функцию, как и любую другую встроенную функцию Sheets: в ячейке Sheet введите =
, а затем имя функции и любые требуемые параметры. Если ошибок нет, возвращаемый функцией результат помещается в ячейку Sheet, при необходимости перетекая в соседние ячейки.
При создании пользовательских функций в дополнении следует следовать общим рекомендациям по созданию пользовательских функций:
- Правила именования функций
- Определение аргументов функции
- Определение возвращаемого значения функции
- Пользовательские типы данных функций
- Включение автозаполнения с помощью JSDoc
- Услуги, которые могут использовать пользовательские функции
- Оптимизация пользовательских функций
Кроме того, пользовательские функции, определенные в дополнениях, имеют некоторые особые требования:
- При именовании функции постарайтесь создать уникальное имя, возможно, связанное с именем вашего дополнения. Если два или более установленных дополнений определяют пользовательские функции с одинаковым именем, пользователи смогут использовать только одно из них.
- Ваше дополнение должно четко сообщать, какие пользовательские функции оно предоставляет. Обязательно предоставьте точные комментарии JSDoc для ваших пользовательских функций, чтобы Apps Script мог предоставить пользователю информацию автозаполнения . Кроме того, рассмотрите возможность предоставления дополнительной документации по пользовательским функциям либо в самом дополнении, либо на веб-странице поддержки дополнений.
- Пользовательские функции, которые не завершаются менее чем за 30 секунд, завершаются с
Internal error executing the custom function
error. Создайте хороший пользовательский опыт, ограничив объем обработки, которую вы делаете в пользовательской функции. Оптимизируйте функцию, где это возможно. - Пользовательские функции не могут использовать службы Apps Script, требующие авторизации, и при попытке выполнить эту функцию возникает ошибка
You do not have permission to call X service
. Используйте только разрешенные службы в своей пользовательской функции. - Каждая пользовательская функция в таблице приводит к отдельному вызову серверов Apps Script. Если пользователь попытается использовать пользовательские функции в слишком большом количестве ячеек, функции могут выполняться медленно. Чтобы смягчить это, сделайте пользовательские функции максимально простыми. Если вам нужна функция для выполнения сложной или расширенной обработки, не используйте пользовательскую функцию — вместо этого предоставьте эту функциональность через элемент меню, диалоговое окно или взаимодействие с боковой панелью.
Макросы листов
Макросы позволяют записывать действия, выполненные в Google Sheets, и повторять их позже с помощью сочетания клавиш. Когда макрос создается в таблице, он добавляется как макрофункция в проект Apps Script , привязанный к этой таблице. Для получения дополнительной информации о макросах см. раздел Макросы Google Sheets .
К сожалению, макросы Таблиц не могут распространяться с надстройками. Если вы включите определение макроса в манифест надстройки, оно будет недоступно пользователям этой надстройки.