エクセルでVBAを使わずに関数を作る方法!【LAMBDA関数】
EXCEL活用テクニック【なんでもできるLAMBDAとは?】
【LAMBDA関数を使う】
Microsoft365のExcelにLAMBDA「ラムダ」という関数があるのをご存知でしょうか。サブスクリプションの特典なので、Microsoft365でしか利用できません。2022年頃から提供が始まったサービスなのですが、VBA(Visual Basic for Applications)を学習することなく、簡単に関数が作れますのでご紹介したいと思います。
LAMBDA関数の書式
書式
=LAMBDA([パラメータ, パラメータ, ...], 計算) (関数の呼び出し) ※セルにLAMBDAを作成する場合
- パラメータ
セル参照、文字列、数値などの関数に渡す値
- 計算
関数の結果を実行して返す数式
- 関数の呼び出し
LAMBDA関数に渡す値
例
=LAMBDA(x,y,x+y)(1,3)
4(計算結果) - - - 加算
=LAMBDA(x,y,(x+y)/2)(1,3)
2(計算結果) - - - 平均
=LAMBDA(a,b,SQRT(a^2+b^2))(3,4)
5(計算結果) - - - 斜距離
LAMBDA(以下「ラムダ」)関数は引数として、パラメータと計算の2つから構成され、パラメータは最大253個、そして最後の引数が結果を返すための計算式になるという決まりになっています。引数として値を与えてやると、その結果を返すということは、ユーザーがこのラムダの中で、関数を自由自在に作ることができて、ワークシート上で簡単に使うことができるようになります。つまり、VBA(マクロ)を使わずにユーザー定義関数を作成できる時代になったんですね。
ラムダ関数をセル内で呼び出すには、書式に続いて引数(数値、文字、セル参照)を与えてやる必要があります。引数が無いと#CALC!
エラーを返しますので注意してください。ラムダ関数は、他のExcel関数とは少し異なる動作をします。数式の後ろに()を追加してラムダ関数に値を渡し、関数を呼び出す書式が必要です。
ラムダ関数をセルに直接入力する
- 【LAMBDA関数の書式】内の例
=LAMBDA(a,b,SQRT(a^2+b^2))(3,4)
をマウスのドラッグで選択して、[Ctrl]+[C]を使ってコピーします。セルD3をアクティブ(クリック)にして数式バーに、[Ctrl]+[V]で貼り付けます。 - [Enter]キーを押して入力を確定させると、セルD3に5が返されます。
【LAMBDA関数に名前を付ける】
ここからがいちばん大事なところかもしれません。内容が重複しますので、その方法についてはこちらからお願いします。
より高度な関数を簡単に作る方法!VBA不要【LAMBDAとLET関数でヘロンの公式】
ダウンロード
ラムダ関数を使った土量計算書(フリーウエア)を公開しますのでご利用ください。