LAMBDA関数 – 独自のユーザー定義関数をExcel内で作成できる関数
1. 使い方と活用例
LAMBDA関数は、Excel内で自分だけのユーザー定義関数(UDF)を作成できる強力な関数です。
従来はVBAを使って定義していたような関数を、セル上や名前の定義機能を使って、数式だけで作成・再利用できます。
複雑な計算処理を簡潔に表現したいときや、繰り返し使うロジックを簡単に再利用したいときに便利です。
2. 基本の書式
=LAMBDA([parameter1, parameter2, ...], calculation)
3. 引数の説明
- parameter1, parameter2, … – 省略可能。関数に渡す引数(0個以上)。
- calculation – 必須。関数本体(返される計算または式)。
4. 使用シーン
- 繰り返し使う計算ロジックを名前付き関数として定義したいとき。
- IF、LET、MAP、REDUCEなどの関数と組み合わせて複雑な処理を簡潔に書きたいとき。
- 再利用性・メンテナンス性の高いワークシートを設計したいとき。
5. 応用のポイント
LAMBDA関数をセルで直接評価する場合は、末尾に ()
を付けて呼び出す必要があります。
また、「数式タブ → 名前の管理」からLAMBDAを登録することで、ユーザー関数のように任意の関数名で使用可能になります。
ネストや再帰も可能であり、LET関数と組み合わせることで、読みやすく高速な定義が可能です。
6. 具体例とその解説
以下は、2つの数値の平均を計算するLAMBDA関数の例です。
=LAMBDA(a, b, (a + b) / 2)(10, 20)
この関数は、a = 10
、b = 20
として評価され、15
を返します。
なお、この関数を「名前の定義」から MYAVERAGE
という名前で保存しておけば、
次回からは =MYAVERAGE(10, 20)
のように関数として使えます。
7. 関連関数の紹介
- LET関数 – 名前付き変数を数式内で使える関数。LAMBDAと組み合わせて可読性を向上。
- MAP関数 – 配列内の各要素にLAMBDA関数を適用する関数。
- REDUCE関数 – 配列を集計・集約する関数(LAMBDA使用)。
- BYROW関数、BYCOL関数 – 行または列ごとにLAMBDAを適用する関数。
- IF関数 – 条件によって処理を分ける基本的な制御関数。
8. まとめ
LAMBDA関数は、Excelの中で「カスタム関数」を作成できる革新的な機能です。
名前定義との併用により、メンテナンス性や再利用性の高い関数設計が可能になります。
Power Query や VBA に頼らず、ワークシートレベルで柔軟な関数を作れる点が大きな特長です。
9. 対応バージョン
LAMBDA関数は、Microsoft 365 および Excel for the web の最新バージョンで使用可能です。
Excel 2019以前のバージョンでは利用できません。