KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Функция REDUCE в Excel (365)

АвторZhoumandyДата изменения

Функция REDUCE применяет функцию LAMBDA к каждому значению в массиве и возвращает итоговое значение в аккумуляторе, сводя массив к одному накопленному результату.

reduce-function 1


Синтаксис

=REDUCE ([initial_value],array,lambda(accumulator, value))


Аргументы

  • Начальное_значение (необязательно): начальное значение аккумулятора. Если не указано, по умолчанию используется 0.
  • Массив (обязательный): массив, который необходимо свести.
  • Лямбда(обязательная): Пользовательская функция LAMBDA, применяемая для сведения массива.
    • Аккумулятор (обязательный): значение, которое суммируется и возвращается в качестве итогового результата.
    • Значение (обязательное): вычисление, применяемое к каждому элементу массива.

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

Функция REDUCEвозвращает одно значение.


Примечания по функции

  1. Функция REDUCE недавно появилась в Excel для Microsoft 365, поэтому она недоступна в более ранних версиях Excel.
  2. Значение ошибки #ЗНАЧ!возникает, если выполняется одно из следующих условий:
    • указана недопустимая функция LAMBDA;
    • Указано неверное количество параметров.

Пример

Как показано на приведённом ниже снимке экрана, имеется массив данных. Чтобы отдельно просуммировать чётные и нечётные числав массиве, выполните следующие действия:

Чтобы просуммировать чётные числа, скопируйте приведённую ниже формулу в ячейку F6, затем нажмите клавишу Enter, чтобы получить результат.

=REDUCE()0,B6:D9,LAMBDA(a,b,IF(ISEVEN(b), a+b,a)))

reduce-function 3

Чтобы просуммировать нечётные числа, скопируйте приведённую ниже формулу в ячейку F7, затем нажмите клавишу Enter, чтобы получить результат.

=REDUCE()0,B6:D9,LAMBDA(a,b,IF(ISODD(b), a+b,a)))

reduce-function 2

Примечание: В каждой из приведённых выше формул аргумент начальное_значение установлен в значение 0. Его также можно опустить и заменить на пустое место. Например, чтобы просуммировать чётные числа, формулу в ячейке F6 можно изменить следующим образом:

=REDUCE(),B6:D9,LAMBDA(a,b,IF(ISEVEN(b), a+b,a)))

Связанные функции:

  • Функция ExcelMAP
    Функция MAP применяет функцию LAMBDA, чтобы создать новое значение, и возвращает массив, полученный преобразованием каждого элемента в заданном(ых) массиве(ах).

  • Функция Excel LAMBDA
    Функция LAMBDA в Excel позволяет создавать собственные многократно используемые функции прямо внутри книги.

  • Функция Excel MAKEARRAY
    Функция MAKEARRAY в Excel создаёт вычисляемый массив с заданным количеством строк и столбцов.