1. Главная страница
  2. ››
  3. Формулы
  4. ››
  5. BYROW • по строкам - Upline Studio

BYROW • по строкам - Upline Studio

Команда

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.


Распространённые ошибки

  1. Переданная лямбда-функция не имеет ровно одного аргумента “имя”
  2. Если переданная лямбда-функция не имеет ровно одного аргумента "имя" и одной формулы в качестве аргумента, возникает следующая ошибка:

    «Неверное количество аргументов лямбда-функции: 2 вместо 1».

    Пример: =BYROW(C1:C4,LAMBDA(a,b,a+b))

    В этом примере для лямбда-функции задано два аргумента "имя", тогда как нужен только один.

  1. Последний параметр функции BYROW не является лямбда-функцией
  2. Если последний параметр функции BYROW не является лямбда-функцией, возникает следующая ошибка:

    «Аргумент должен быть лямбда-функцией».

    Пример: =BYROW(C1:C4,4)

  1. Лямбда-функция, переданная функции BYROW, неверна
  2. Если один или несколько аргументов "имя" недействительны, возникает следующая ошибка:

    «Аргумент 1 лямбда-функции является недопустимым именем».

    Пример: =BYROW(C1:C4,LAMBDA(C1, C1+1))

    В этом примере С1 является недопустимым именем, поскольку конфликтует с диапазоном.

  1. При применении лямбда-функции к входному массиву строки не группируются по одиночному значению
  2. Если при применении лямбда-функции к входному массиву строки не группируются по одиночному значению, возникает следующая ошибка:

    "Необходимо указать одиночное значение. Результаты из вложенных массивов не поддерживаются".

    Пример: =BYROW(C1:E1,LAMBDA(строка,строка))

Сопутствующие функции

  • Функция LAMBDA – позволяет создать специальную функцию с набором имен и формулой, в которой они используются.
  • Функция MAP – сопоставляет каждое значение в выбранных массивах с новым значением.
  • Функция REDUCE – преобразует массив в накопленный результат.
  • Функция SCAN – сканирует массив и выводит промежуточные значения.
  • Функция MAKEARRAY – рассчитывает и создает массив указанного размера.

Источники

Google Sheets function list (на английском)

Logo Upline Studio Creatium

Наша команда Uplinestudio разрабатывает сайты под разные потребности клиентов. Одним из ключевых направлений в нашей разработке является создание сайтов на Creatium.

Оставить заявку

Работает на Creatium