MAP関数はラムダヘルパー関数の一種です。
ラムダ関数とは?って方は初めにラムダ関数についてもまとめてますので先にそちらを確認してください。
MAP 関数とは
MAP 関数は選択したセルの範囲をループ処理し新しい値に形成した配列を返します。
何言ってるか分からないかもですが動作を確認すれば単純で便利な関数です。
構文
= MAP (array, [array, ...] lambda)
MAP 関数では次の引数とパラメーターがあります。
array マップする配列です。lamda関数へ複数の配列を渡す必要がある場合、複数指定します。
lambda 計算するlambda関数を入力します。
使い方
例として下記の商品リストがあります。
商品ごとに合計金額を出したい場合の記入例です。
式はE2へ入力を行いE3:E5に関してはスピルで表示されているゴーストです。
LAMBDA関数では価格と個数を掛け合計金額を返します。
MAP関数で価格にB2:B5、個数でC2:C5を指定してます。
この場合、LAMBDA関数では
LAMBDA(price, num, price * num)(B2, C2)
LAMBDA(price, num, price * num)(B3, C3)
LAMBDA(price, num, price * num)(B4, C4)
LAMBDA(price, num, price * num)(B5, C5)
のように繰り返し処理され戻り値が戻されます。
これ以上の機能はないので使ってみると簡単ですよね。
ただし、複数の配列を指定する場合、同じ数を指定しないとN/Aになります。
又、リストをテーブルにすることでデータを追加されたときなど自動的に更新することも可能です。
上記、例の場合
=テーブル2[価格]*テーブル2[個数]
と入力することでスピル機能で同様の結果が得られますが、LAMBDA関数側で複雑な処理が必要な場合に利用するのがお勧めです。