BYROW
По строкам.
Функция группирует массив по строкам, применяя к каждой из них функцию LAMBDA.
Работа с массивами / Array
На русском
BYROW(массив_или_диапазон; LAMBDA)
Выбор запятой или точки c запятой между аргументами формулы определяется не тем, на каком языке записана команда, а языковой версией Google Таблиц как таковых. Если у вас русскоязычные Google Таблицы, то команду вы можете записать и на русском, и на английском языке — Google Таблицы её просто сами переведут. Но вот разделителем должна быть точка с запятой, иначе вы получите синтаксическую ошибку.
На английском
BYROW(array_or_range, LAMBDA)
Пояснения:
BYROW(массив_или_диапазон,LAMBDA)
массив_или_диапазон
– массив или диапазон, который необходимо сгруппировать построчно.LAMBDA
– лямбда-функция, которая применяется к каждой строке из массива или диапазона, чтобы получить ее групповое значение.LAMBDA(имя,формула)
Лямбда-функция должна иметь ровно один аргумент "имя" и формулу, в которой это имя используется. При применении лямбда-функции аргумент "имя" определяет текущую группируемую строку.
#N/A
. Аргумент относится к строке во входном массиве.BYROW(A1:C3; LAMBDA(строка; MAX(строка)))
BYROW(A1:C3; LAMBDA(строка; SUM(строка)))
Формула из примера: =BYROW(A2:C4; LAMBDA(строка; СУММ(строка)))
Формула помещена в ячейку A7
.
Фильтр по годам, в которые сумма продаж за любой квартал превысила 1300
Формула из примера:=FILTER(A3:A6; BYROW(B3:E6; LAMBDA(строка; МАКС(строка)>1300)))
Формула помещена в ячейку A9
.
Возврат массива 3×1 с разницей между максимальным и минимальным значением в каждой строке, определяемой именованной функцией в качестве лямбда-функции
Формула из примера: =BYROW(A2:C4; LAMBDA(строка;МАКС(строка)-МИН(строка)))
Упрощённая формула (это схема для понимания, а не рабочая формула): =BYROW(A1:C3,MAX_MIN_DIFF)
Именованная функция MAX_MIN_DIFF
выводит разницу между максимальным и минимальным значениями.
Определение формулы: =MAX(строка)-MIN(строка)
, где строка
– это тег аргумента, заданный для MAX_MIN_DIFF
.
Если переданная лямбда-функция не имеет ровно одного аргумента "имя" и одной формулы в качестве аргумента, возникает следующая ошибка:
«Неверное количество аргументов лямбда-функции: 2 вместо 1».
Пример: =BYROW(C1:C4,LAMBDA(a,b,a+b))
В этом примере для лямбда-функции задано два аргумента "имя", тогда как нужен только один.
Если последний параметр функции BYROW не является лямбда-функцией, возникает следующая ошибка:
«Аргумент должен быть лямбда-функцией».
Пример: =BYROW(C1:C4,4)
Если один или несколько аргументов "имя" недействительны, возникает следующая ошибка:
«Аргумент 1 лямбда-функции является недопустимым именем».
Пример: =BYROW(C1:C4,LAMBDA(C1, C1+1))
В этом примере С1
является недопустимым именем, поскольку конфликтует с диапазоном.
Если при применении лямбда-функции к входному массиву строки не группируются по одиночному значению, возникает следующая ошибка:
"Необходимо указать одиночное значение. Результаты из вложенных массивов не поддерживаются".
Пример: =BYROW(C1:E1,LAMBDA(строка,строка))
Google Sheets function list (на английском)
Список функций Google Таблиц (на русском)
Простой текст
Работает на Creatium