MAP
通过应用 LAMBDA 来创建新值,返回将数组中每个值映射到新值而形成的数组。
语法
=MAP(array1, lambda_or_array<#>)
array1 要映射的数组。
lambda_or_array 一个 LAMBDA,必须是最后一个参数,并且必须具有传递的每个数组的参数,或者必须有另一个要映射的数组。
说明
- 提供无效的 LAMBDA 函数或不正确的参数数字将返回 #VALUE! 错误称为“参数不正确”。
示例
如果将示例复制到空白工作表中,可能会更易于理解该示例。
- 示例1:特定值上方的平方数
将示例数据输入单元格 A1:C2,然后将公式复制到单元格 D4:
=MAP(A1:C2, LAMBDA(a, IF(a>4,a*a,a)))

- 示例2:在一行中查找两列均为 TRUE 的值
创建一个名为“TableA”的表,其中两列名为“Col1”和“Col2”,从单元格 D1 开始。 在单元格 G1 中添加名为 “BothTrue” 的列。 将公式复制到单元格 G2 中:
=MAP(TableA[Col1],TableA[Col2],LAMBDA(a,b,AND(a,b)))

- 示例3:在一行中的三列内查找符合特定条件的值
使用单元格 D1:E11 中名为 “Size” 和 “Color” 的两列创建一系列示例数据。 在单元格 F1 和 G1 中分别添加名为 “Valid Size” 和 “Valid Color” 的两个列标题。 将公式复制到单元格 F2 中:
=FILTER(D2:E11, MAP(D2:D11, E2:E11, LAMBDA(s, c, AND(s="Large", c="Red"))))

相关功能
逻辑函数
BYCOL函数
BYROW函数
ISOMITTED函数
MAKEARRAY函数
REDUCE函数
SCAN函数