Функция BYCOL в Excel

Функция BYCOL в Excel применяет функцию LAMBDA к каждому столбцу в заданном массиве и возвращает один результат для каждого столбца в виде единого массива. В показанном примере данными является именованный диапазон C5:H9.

Примечание. BYCOL — это бета-функция, доступная только через канал Insiders Excel 365 .

Что делает функция BYCOL в Excel ?

Функция BYCOL в Excel позволяет применить функцию LAMBDA к столбцу.

Возвращаемое значение

Один результат на столбец.

Аргументы

  • array — Массив или массив для обработки.
  • lambda — лямбда-функция, применяемая к каждому столбцу.

Синтаксис

=BYCOL(array, lambda)

Примечания по использованию

Функция BYCOL  в Excelприменяет функцию LAMBDA к каждому столбцу в массиве и возвращает один результат для каждого столбца в виде единого массива. Целью BYCOL является обработка данных в массиве или диапазоне по столбцу. Например, если BYCOL задан массив с 3 столбцами, BYCOL вернет массив с 3 результатами. Вычисления, выполняемые для каждого столбца, обеспечиваются пользовательской функцией LAMBDA .

Функция BYCOL принимает два аргумента: массив и лямбда. Массив — это массив или диапазон для обработки. Lambda — это функция LAMBDA, которую следует запускать для каждого столбца в массиве . Лямбда-функция должна возвращать один результат для каждого столбца, иначе BYCOL вернет #CALC! ошибка.

Примеры

Чтобы суммировать каждый столбец в диапазоне, вы можете использовать функцию BYCOL следующим образом:

=BYCOL(range,LAMBDA(column,SUM(column)))

Функция BYCOL передает содержимое диапазона по одному столбцу за раз в функцию LAMBDA, которая использует функцию СУММ для вычисления суммы для каждого столбца. Затем BYCOL предоставляет результаты вычисления LAMBDA в одном массиве. Если диапазон содержит 5 столбцов, BYCOL возвращает массив, содержащий 5 сумм.

Пример рабочего листа

На листе, показанном выше, функция BYCOL используется для выполнения 5 отдельных вычислений с данными, которые представляют собой именованный диапазон C5:H5. В ячейке C11 приведенная ниже формула используется для вычисления суммы для каждого столбца:

=BYCOL(data,LAMBDA(column,SUM(column)))

Поскольку в данных 6 столбцов, результатом является массив с 6 суммами, подобными этому:

{391,429,347,394,325,363}

Значения в этом массиве переходят в диапазон C11:H11. Все остальные формулы в C12:C14 следуют тому же шаблону:

=BYCOL(data,LAMBDA(column,MAX(column))) // max
=BYCOL(data,LAMBDA(column,MIN(column))) // min
=BYCOL(data,LAMBDA(column,AVERAGE(column))) // average

Подсчет ячеек более 90

В ячейке C15 формула немного сложнее. Цель состоит в том, чтобы подсчитать ячейки в каждом столбце со значением более 90, и используется следующая формула:

=BYCOL(data,LAMBDA(column,SUM(--(column>90)))) // count >90

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

Примечание: функцию COUNTIF можно использовать вместо SUM, но COUNTIF требует диапазона и не будет работать с массивом.

Автор А. Днепров

Обучаю основам работы с офисными программами.

Функция BYCOL в Excel
Функция ISERROR в Excel