Как создать пользовательские функции в Google Sheets

Вы когда-нибудь хотели, чтобы ваша таблица была такой же умной, как вы? Ну, это может быть не так уж и умно, но с небольшой помощью Google Scripts вы можете создать свои собственные пользовательские функции и приблизить их к этой цели.

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

Встроенные функции

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

, Простым примером встроенных функций будет «Сумма» или «Среднее:»

Листы встроенная_команда_оболочка-функция

Что, если вы хотите выполнить динамическое вычисление, которое текущие функции просто не обрабатывают? Рассмотрим сценарий, в котором вы хотите добавить сумму налога к покупке. Поскольку ставки налога варьируются в зависимости от местоположения, вам необходимо создать функцию с длинным списком вложенной логики «Если». Это будет выглядеть примерно так:

'=if(A2="PA",B2*0.06,if(A2="CA",B2*0.0625,B2*0))'

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

Как и в Excel, но как только вы научитесь создавать свои собственные функции в Google Script, ваш разум откроется для нового мира полезных возможностей. Итак, начнем.

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

Если вы новичок в написании сценариев, не бойтесь! Это довольно просто в использовании. Следующий пример поможет вам начать работу, и если вы действительно хотите глубже понять Google Script, мы вам поможем

,

1. Откройте редактор скриптов

Из вашего листа выберите инструменты > Редактор скриптов

Листы-ScriptEditor

2. Создайте свою функцию

Вы захотите дать своей функции полезное имя; глаголы работают хорошо. Информация, которую вы вставите в свою функцию, будет указана в скобках как переменная. Как правило, это будет просто значение ячейки, с которым вы хотите работать, но если у вас есть более одного значения, просто разделите их запятой.

Чтобы использовать этот пример налога, вы можете скопировать и вставить этот код в редактор скриптов:


function tax(input, location) {
var rate = 0 ;
switch (location) {
case 'PA':
rate = 0.06;
break;
case 'CA':
rate = 0.0625;
break;
default:
rate = 0;
}
return (input * rate);
}

Листы-CustomFunction-код

Замечания: Вы можете видеть, что я включил только два местоположения в этом примере, просто чтобы дать вам идею. Вы можете добавить больше, просто добавив дополнительные строки «case» и «break» с дополнительными местоположениями, которые вам требуются. Это будет хорошей практикой.

3. Сохраните свою функцию

Выбрать файл > Сохранить, дать название вашему проекту и нажать Хорошо.

Листы-CustomFunction-Save2

Используйте вашу пользовательскую функцию

Теперь самое интересное начинается! Как только ваша функция была создана, вы можете начать использовать ее так же, как и встроенную функцию. В ячейке, где вы хотите, чтобы ваши расчеты отображались, вы вводите «= yourFunctionName (входные данные)»

В нашем налоговом примере мы используем два входа. Местоположение, которое будет определять ставку налога и цену продукта, к которому применяется налог:

«= Налог (B2, A2)», где B2 — цена продукта, а A2 — место налогообложения.

Листы-CustomFunction-пример

Вы можете использовать автозаполнение

перетащить вашу функцию во все строки, как если бы вы использовали встроенную функцию:

Листы-CustomFunction-автозаполнение

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

Листы-CustomFunction-Кодекса2

Приведенный выше скрипт дает следующий результат:

Листы-CustomFunction-Пример2

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

Не позволяйте всей этой тяжелой работе идти впустую. Вы захотите снова использовать свои пользовательские функции. Даже если вам не нужны все они в будущих листах, нет никаких причин не иметь их в вашем распоряжении.

Вы можете использовать свою работу несколькими способами:

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

Листы-MakeACopy

  1. Скопируйте и вставьте свои функции с одного листа на другой. Это утомительно, но это сработает. Просто откройте редактор сценариев и скопируйте весь код с одного листа, а затем откройте редактор сценариев на другом листе и вставьте туда код.
  2. Сохраните свой лист в галерее шаблонов Google. Имейте в виду, что это сделает ваш документ доступным для других. Вы сможете ограничить это для членов своего домена, если у вас есть подписка на Google Apps для работы, в противном случае она будет общедоступной. Если вы ранее не использовали галерею шаблонов, стоит проверить, так как есть много других полезных шаблонов, которые сделают вашу жизнь проще

    !

Документируй свою работу

Google Script поддерживает формат JSDoc, который позволяет добавлять комментарии к вашей формуле в документ и предоставлять контекст справки.

Листы-JSDoc-exmaple

Это не обязательно, но, безусловно, придаст вашей работе профессиональный вид и может избавить вас от множества вопросов, если вы планируете поделиться своей работой с другими.

Листы-CustomFunction-Документирование

Вы можете сделать так много крутых вещей с помощью Google Script. Создание пользовательских функций для Google Sheets, безусловно, одна из них. Теперь вы можете выйти из ячейки и сделать Google Sheets более функциональными

для ваших индивидуальных потребностей. Для получения дополнительной информации о создании пользовательских функций Google предлагает вам отличную статью знаний.

Вы когда-нибудь создавали пользовательские функции в Google Sheets? Есть ли у вас что-то, что вы хотели бы поделиться в комментариях?

Кредиты изображений: складывание lego graja через Shutterstock

Ссылка на основную публикацию
Adblock
detector