MIN/MAX 应用于数组的 LET 函数的奇怪行为

Strange behavior of LET function with MIN/MAX applifed to an array

假设单元格 A1:C1 包含

100, 300, 40

当A2包含:

=LET(x,A1,x*2)

并复制到 B2:B3,输出为 200,600, 80,正如预期的那样。

如果A2包含

=LET(x,A1,MIN(x,150))

又复制了一遍,输出结果是100, 150, 40,也符合预期。

现在转向范围符号,如果 A2 包含

=LET(x,A1:C1,x*2)

输出溢出到 B2:B3 - 200,600, 80,再次如预期。

但是,如果 A2 包含

=LET(x,A1:C1,MIN(x,150))

输出没有溢出,A2 是 40!

MAX、SUM等和Excel的桌面版和网页版效果相同。

这是错误还是我做错了什么?

MIN、MAX、SUM 和其他允许使用数组作为输入和 return 单个数字。

在这种情况下,只需使用一个简单的 IF() 即可实现所需的功能:

=LET(x,A1:C1,y,150,IF(x<=y,x,y))