С помощью именованных функций можно создавать специальные функции, в которых используются встроенные формулы Google Таблиц. Кроме того, именованные функции можно импортировать в другие таблицы.
Нажмите "Создать копию", чтобы открыть пример таблицы, в которой вы сможете тренироваться во время просмотра видео.
Как открыть именованные функции
- В новой или существующей таблице нажмите Данные Именованные функции.
Как перейти к именованным функциям из ячеек с формулами:
- Нажмите на ячейку с формулой правой кнопкой мыши.
- Выберите Показать другие действия с ячейкой Определить именованную функцию.
Как создать именованную функцию
В качестве плейсхолдеров для входных данных в именованных функциях используются текстовые значения.
Например, функция ЕСЛИ
может содержать максимум три аргумента:
ЕСЛИ(источник; значение_при_соблюдении_условия; значение_при_несоблюдении_условия)
Если добавить текст источник
, значение_при_соблюдении_условия
или значение_при_несоблюдении_условия
в качестве аргумента в ячейку, то вы получите сообщение об ошибке. Эти аргументы представляют собой плейсхолдеры и описания типа входных данных функции. Если вы хотите, чтобы функция принимала различные входные данные, то при написании именованной функции необходимо указать плейсхолдеры аргументов.
Раньше персонализированные функции можно было создавать только с помощью Apps Script, работая с кодом на JavaScript. Теперь благодаря именованным функциям вы можете создавать собственные функции в удобном интерфейсе, не прибегая к написанию кода.
Именованная функция состоит из четырех основных компонентов:
- Название функции:
- Название, которое используется для вставки функции в ячейку. Пишется заглавными буквами.
- Требования:
- Название не должно совпадать с наименованиями встроенных функций Таблиц (например,
СУММ
). - В качестве названия нельзя использовать слова
TRUE, FALSE, ИСТИНА
иЛОЖЬ
. - Название не должно совпадать с обозначением диапазона (синтаксис A1 или R1C1).
- Например, такие варианты, как "A1" или "AA11", могут привести к появлению ошибки.
- Название не должно начинаться с цифры.
- Название должно содержать не более 255 символов.
- Название не должно содержать пробелы.
- Название не должно содержать других специальных символов, кроме символа подчеркивания.
- Название не должно совпадать с наименованиями встроенных функций Таблиц (например,
- Описание функции:
- Описание, которое показывается в разделе "О функции" в окне подсказок.
- Плейсхолдеры аргументов (необязательно):
- Плейсхолдеры – это описания типов входных данных, ожидаемых функцией. Например, названия аргументов
ЯЧЕЙКА
илиДИАПАЗОН
можно задавать, когда в качестве входных данных выступает одна ячейка или диапазон ячеек соответственно. - Требования:
- Название не должно совпадать с названием другого плейсхолдера аргумента в именованной функции.
- Название не должно совпадать с обозначением диапазона (синтаксис A1 или R1C1).
- Например, такие варианты, как "A1" или "AA11", могут привести к появлению ошибки.
- Название не должно содержать пробелы.
- Название не должно содержать других специальных символов, кроме символа подчеркивания.
- Плейсхолдеры – это описания типов входных данных, ожидаемых функцией. Например, названия аргументов
- Определение формулы:
- Написанная формула, которую вы вставляете в ячейку. Когда вы добавляете определенные аргументы, то после вставки функции в ячейку эта функция ожидает входные данные для каждого из них.
- Требования:
- Формула должна поддаваться синтаксическому анализу.
- В формуле не должно быть пропущенных скобок.
- В формуле не должно быть неправильно расставленных запятых.
Дополнительные сведения
После того как вы укажете основные компоненты, на следующей странице можно будет добавить дополнительные сведения. Для каждого плейсхолдера аргумента, который вы ввели, доступны следующие поля:
- Описание аргумента:
- Краткое описание аргумента функции, например такое: "Отдельное значение, которое нужно найти".
- Пример аргумента:
- Пример входного значения для этого аргумента. Например, аргумент, который представляет собой диапазон ячеек, будет выглядеть так: "B3:B14".
Эти дополнительные сведения (наряду с основными компонентами) будут видны в окне подсказок, когда пользователь будет добавлять именованную функцию в ячейку.
Импорт именованных функций
Именованные функции, созданные вами или другими пользователями, можно использовать в других таблицах. Для этого их нужно импортировать:
- Откройте Google Таблицы на компьютере.
- Откройте таблицу, в которую нужно импортировать именованные функции.
- В верхней части экрана нажмите Данные Именованные функции Импортировать функцию.
- Выберите таблицу, в которой содержатся нужные функции.
- Выберите именованные функции, которые вы хотите импортировать.
- Если вам нужны все именованные функции из файла, то нажмите Импортировать все.
- Нажмите Импортировать.
Примечания
- Если в файле уже есть именованная функция с таким же названием, как у импортируемой, то новая функция заменит существующую.
- Если импортируемая функция зависит от другой именованной функции (например, определения формулы), вы увидите уведомление об этом, а зависимые функции будут в нем выделены.
- Если в импортируемой функции используется формула, взаимодействующая с внешним источником (например,
IMAGE
), вы увидите уведомление об этом.
Примеры
Именованная функция с двумя плейсхолдерами аргументов
- Название функции:
СОДЕРЖИТ
- Описание. Проверяет, содержит ли диапазон заданное значение. Если да, то она возвращает значение
ИСТИНА
, если нет – тоЛОЖЬ
. - Плейсхолдеры аргументов:
поисковый_запрос
,диапазон_поиска
- Определение:
=НЕ(ЕОШИБКА(ПОИСКПОЗ(поисковый_запрос,диапазон_поиска,0)))
- Дополнительная информация:
- Описание аргумента:
поисковый_запрос
- Искомое значение.
- Пример аргумента:
поисковый_запрос
- B3
- Описание аргумента:
диапазон_поиска
- Диапазон, в котором выполняется поиск значения.
- Пример аргумента:
диапазон_поиска
- B3:B14
- Описание аргумента:
Именованная функция без плейсхолдеров аргументов
- Название функции:
СЛОГАН_ИМЕНОВАННОЙ_ФУНКЦИИ
- Описание. Показывает предложение, которое описывает именованные функции.
- Определение:
="Благодаря именованным функциям мои формулы легко читать и использовать."
Именованная функция с рекурсией
- Название функции:
ОБРАТНЫЙ_ПОРЯДОК
- Описание. Изменяет порядок слов в строке на обратный.
- Плейсхолдеры:
стр
- Определение:
=ЕСЛИ(ЕОШИБКА(НАЙТИ(" ", стр)), стр, ОБРАТНЫЙ_ПОРЯДОК(ПРАВСИМВ(стр, ДЛСТР(стр)-НАЙТИ(" ", стр)))&" "&ЛЕВСИМВ(стр, НАЙТИ(" ",стр)-1)).
- Дополнительная информация:
- Описание аргумента:
стр
- Строка, порядок слов в которой нужно изменить на обратный.
- Пример аргумента:
стр
- "обратный на изменить нужно которой в слов порядок Строка,"
- Описание аргумента:
Именованная функция с LAMBDA
- Название функции:
ПОДСЧЕТ_ФОРМУЛ
- Описание. Вычисляет количество формул в указанном диапазоне.
- Плейсхолдеры:
диапазон
- Определение:
=COUNTIF(MAP(диапазон,LAMBDA(ячейка, ISFORMULA(ячейка))),"ИСТИНА")
- Дополнительная информация:
- Описание аргумента:
диапазон
- Диапазон, в котором выполняется поиск формул.
- Пример аргумента:
диапазон_поиска
- A2:D7
- Описание аргумента:
Часто задаваемые вопросы
Можно ли в именованных функциях использовать относительные диапазоны?Нет, в определениях формул используются только абсолютные диапазоны. Другие форматы также преобразуются в абсолютные. Например, диапазон "A1:B3" будет сохранен в формате "1!$A$1:$B$3". Относительные диапазоны можно передавать именованным функциям в качестве аргументов.
Да, плейсхолдерам аргументов можно давать такие же названия, как и у встроенных функций. Однако обратите внимание, что если они будут использоваться в одной и той же именованной функции, то плейсхолдер аргумента будет иметь приоритет над встроенной функцией.
Да. Определенные названия без параметров можно импортировать в Таблицы, но их необходимо вызывать без скобок.
Да. При этом определенные названия будут обновлены в соответствии с синтаксисом именованных функций. Ко всем ссылкам на ячейки необходимо добавить скобки.
Нет, этого сделать нельзя. Вы можете добавить в таблицу персонализированную функцию с тем же названием, что и у существующей именованной функции. Однако в этом случае приоритет будет иметь именованная функция.
Это могло произойти по двум причинам:
- Расчет по формуле занял слишком много времени.
- Расчет по формуле потребовал слишком много памяти.
Чтобы устранить эту проблему, используйте более простую формулу.
Именованный диапазон имеет приоритет над именованной функцией.