MAP 関数

Excel 365

概要

MAP 関数は、配列内の各要素に対して LAMBDA 関数を適用し、新しい値で構成された配列を返します。これにより、配列の各値を変換・マッピングして新しい配列を作成できます。

構文

=MAP(array1, lambda_or_array<#> )

パラメータ

パラメータ タイプ 必須 説明
array1 配列 はい マッピング対象のメイン配列
lambda_or_array<#> LAMBDA関数または配列 はい 各要素に適用する LAMBDA 関数、またはマッピング用の配列

MAP関数の使用

MAP 関数は配列プログラミングのパワーを Excel に導入します。従来の配列数式では困難だった要素ごとの変換を、シンプルで読みやすい構文で実現します。データ変換、条件付き処理、数値計算など多様な用途で活用できます。

MAPの一般的な例

特定の値を超える場合の平方数計算

=MAP(A1:C2, LAMBDA(a, IF(a>4,a*a,a)))

A1:C2の各値に対して、4より大きい場合はその値の2乗、小さい場合は元の値を返します。

2列で両方TRUEの条件を検索

=MAP(TableA[Col1],TableA[Col2],LAMBDA(a,b,AND(a,b)))

2つの列の値が両方とも TRUE の場合に TRUE を返し、条件フィルタリングに活用します。

FILTER関数との組み合わせ

=FILTER(D2:E11,MAP(D2:D11,E2:E11,LAMBDA(s,c,AND(s="Large",c="Red"))))

サイズが「Large」かつ色が「Red」の行のみを抽出します。

よくある質問

配列の各要素に対して個別の変換処理を適用し、新しい配列を作成するために使用します。データ変換や条件処理に最適です。

はい、通常は LAMBDA 関数を第2引数以降に指定します。無効な LAMBDA は #VALUE! エラーを引き起こします。

一般的なエラーと解決策

#VALUE! エラー

Cause: 無効な LAMBDA 関数またはパラメータ数の不一致

Solution: LAMBDA関数の構文とパラメータ数を確認してください。

予期しない結果

Cause: LAMBDA関数の戻り値が配列でない

Solution: LAMBDA関数が適切な値を返すように修正してください。

注記

  • Excel 365でのみ利用可能
  • 動的配列を返します
  • 複数配列を同時に指定可能
  • 他の動的配列関数(REDUCE、SCANなど)と連携が強力

互換性

利用可能: Excel 365, Microsoft 365

利用不可: Excel 2019以前, Excel for Web(一部制限)

コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 365