Excel 独自の関数を作成 (LAMBDA関数)
LAMBDA(ラムダ)関数は2022年2月にMicrosoft365(Office365)のExcelに追加された新機能で、
ユーザが関数を作成するための関数です。
この関数はマクロ・VBAを使わずに独自の関数を作成可能で、
同じ数式を多くのセルに記述する場合に有効です。
仕様
=LAMBDA(引数名1, ~ 引数名253,数式)(引数1~引数253)
赤字の部分は利用方法によっては記述しません。
引数 | 省略時の値 | 説明 |
---|---|---|
引数名1~253 | 引数なし | 引数名を指定します。 引数なしで数式のみ指定も可能ですが、 その場合は「名前の管理」の方が簡潔です。 |
数式 | 省略不可 | 数式か値を設定します。 定義した引数を使用可能です。 |
引数1~253 | 引数なし | セル内でLAMBDA関数を記述する場合は 引数として使用する値かセルを指定します。 名前の管理でLAMBDA関数を記述する場合は記述しません。 |
使い方
基本的な利用方法
セル内に記述してテスト(検証)
セル内で記述する使い方はLET関数の方が優れているため基本的にはテスト用です。
この方法で正常に動くことを確認後に、
名前の管理(後述)でブック全体で利用できる関数に登録します。
例として消費税額を計算する関数を作成します。
=LAMBDA(価格,消費税率,価格*消費税率)(1000,10%)
赤の部分が引数の定義、青の部分が数式、緑の部分が実際に与える引数です。

引数の部分はセル指定も可能です。

セル範囲を指定して集計関数を利用することも可能です。

名前の管理に登録してブック全体で利用可能にする
数式より名前の管理をクリックします。

新規作成をクリックします。

カスタム関数の内容を登録します。

項目 | 説明 |
---|---|
名前 | カスタム関数名を指定します。 |
範囲 | ブック全体で利用可能にするか、 特定のシートのみの使用可能とするかを選択します。 |
コメント | 任意の説明文を指定します。 コメントはこのように表示されます。 ![]() |
参照範囲 | LAMBDA関数の数式(最後の引数指定はなし)を指定します。 |
OKをクリックするとカスタム関数が利用可能になります。

有効な場面(メリット)
これにより何度も発生する数式を名前の管理で付けた名前で記述することが可能になり
変更の手間と変更漏れのリスクが軽減され、数式が簡素になります。
特に複数シートに同じ数式が点在するような状況で有用です。
他の機能の方が適切な場面
数式が横や縦に並んでいる場合はスピル、
名前を付けるだけであればLET関数の方が有効です。
ヘルパー関数を利用
これまでの機能では実現できなかった数式を
LAMBDA関数とヘルパー関数で実現します。
全体的にここまでしなくても中間セルを工夫すれば実現可能なため
共有ブックなどで可能な限り単独のセルで完結させたい場合に使います。
- MAP関数:関数の対象範囲をセルで分割し個々の結果を取得
- REDUCE関数:任意の数式の累積計算を行い結果を取得
- SCAN関数:任意の数式の累積計算を行うセル範囲を作成
- MAKEARRAY関数:列数の配列(セル範囲)を作成し、任意の数式で個々のセル値を設定
- BYROW関数:関数の対象範囲を行で分割し、行ごとの集計結果を取得
- BYCOL関数:関数の対象範囲を列で分割し個々の結果を取得
- ISOMITTED関数:省略可能な引数を定義するための関数
再帰関数
一般的な事務用途では使う用事が殆どありませんが、
再帰関数(自分自身を呼び出す関数)も定義可能です。
例えば指定数から1までの総和を出す場合、
次のようなカスタム関数を用意します。
=LAMBDA(値,IF(値>1,値 + 総和(値-1),1))


LET関数でセル内でのみ利用可能なカスタム関数を作成
頻度は稀ですが、LET関数と併用してセル内でのみ有効なカスタム関数を定義する方法もあります。
例えば1つのセル内に同じ計算式が何度も登場するが値やセル参照が異なる場合、
カスタム関数にすると数式を簡素に出来る場合があります。
(ただし値やセル参照が同じ場合はLAMBDA関数を使わずLET関数で名前だけ付ける方が簡素です)
次の例では消費税込金額の計算をカスタム関数にしています。
(この程度の数式であればE列に税込み金額列を作るか、
範囲を引数にしてSUM関数を使うか、スピルの方が有効ですがサンプルとして)

Excelを効率的に習得したい方へ
当サイトの情報を電子書籍用に読み易く整理したコンテンツを
買い切り950円またはKindle Unlimited (読み放題) で提供中です。

Word-A4サイズ:1,400ページの情報量で
(実際のページ数はデバイスで変わります)
基本的な使い方、関数の解説(140種類)、
頻出テクニックと実用例(109種類)、
XLOOKUP関数、LET関数、シートビュー、LAMBDA関数、スピルなど便利な新機能を紹介。
体系的に学びたい方は是非ご検討ください。
アップデートなどの更新事項があれば随時反映しています。
なお購入後に最新版をダウンロードするには
Amazonへの問い合わせが必要です。