透過套用 LAMBDA 建立新值,傳回將陣列中每個值對應到新值所形成的陣列。
語法
=MAP (array1, lambda_or_array<#>)
MAP 函數語法具有下列引數和參數:
-
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」 的表格,從儲存格 D1 開始建立兩個名為 「Col1」 和 「Col2」 的資料行。 在儲存格 G1 中新增名為 "BothTrue" 的欄。 將公式複製到儲存格 G2:
=MAP(TableA[Col1],TableA[Col2],LAMBDA(a,b,AND(a,b)))
範例 3:在一列尋找三欄符合特定準則的值
在儲存格 D1:E11 建立一個範圍的範例資料,兩欄分別名為「大小」和「色彩」。 在儲存格 F1 和 G1 分別新增名為「有效大小」和「有效色彩」的兩個欄標題。 將公式複製到儲存格 F2:
=FILTER (D2:E11,MAP (D2:D11,E2:E11,LAMBDA (s,c,AND (s=「Large」,c=「Red」) ) ) )