使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

通过将 LAMBDA 应用于每个值,并在累加器中返回总值,将数组减小为累积值。   

语法

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

REDUCE 函数语法具有以下实参和形参:

  • [initial_value]    设置累加器的起始值。

  • array   要减小的数组。

  • lambda   调用 LAMBDA 来减小数组。 LAMBDA 接受两个参数:

    • accumulator   该值累加后作为最终结果返回。

    • value    应用于数组中每个元素的计算。

备注

使用 initial_value 参数设置累加器参数的起始值。 在示例 2 中,凡是将累加器相乘的地方,都将值设为 1 以避免乘以 0。

错误

提供无效的 LAMBDA 函数或不正确的参数数字将返回 #VALUE! 错误称为“参数不正确”。

示例

示例 1:对平方值求和

将示例数据输入单元格 A1:C2,然后将公式复制到单元格 D4 中:

=REDUCE(, A1:C2, LAMBDA(a,b,a+b^2))

第一个 REDUCE 函数示例1

示例 2:创建自定义的 “PRODUCTIF” 函数以仅乘以大于 50 的值

创建名为 “Table2” 的表,其中具有从单元格 E1 开始名为 “Nums” 的列。 将以下公式复制到单元格 G2 中:

=REDUCE(1,Table2[Nums],LAMBDA(a,b,IF(b>50,a+b,a)))

第二个 REDUCE 函数示例

示例 3:仅对偶数值计数

创建名为 “Table4” 的表,其中具有从单元格 D1 开始名为 “Nums” 的列。 将以下公式复制到单元格 F2 中:

=REDUCE(0,Table4[Nums],LAMBDA(a,n,IF(ISEVEN(n),1+a, a)))

第三个 REDUCE 函数示例

另请参阅

LAMBDA 函数

MAP 函数

SCAN 函数

MAKEARRAY 函数

BYCOL 函数

BYROW 函数

ISOMITTED 函数

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×