LAMBDA 関数

LAMBDA 関数

Excel for Microsoft 365 Excel for Microsoft 365 for Mac Excel for the web その他…表示数を減らす

LAMBDA 関数を使用して、再利用可能なカスタム関数を作成し、フレンドリ名で呼び出します。 新しい関数はブック全体で使用でき、ネイティブ Excel 関数と同様に呼び出されます。

よく使用される数式の関数を作成し、この数式をコピーして貼り付ける (エラーが発生しやすい可能性があります) 必要をなくし、ネイティブの Excel 関数ライブラリに独自の関数を効果的に追加できます。 さらに、LAMBDA 関数には VBA、マクロ、JavaScript が必要ないため、プログラマー以外のユーザーもその使用の恩恵を受けられます。

書式

=LAMBDA([parameter1, parameter2, …,] calculation)

引数説明
パラメーターセル参照、文字列、数値などの関数に渡す値。 最大 253 個のパラメーターを入力できます。 この引数は省略可能です。
計算関数の結果として実行して返す数式。 最後の引数である必要性があり、結果を返す必要があります。 この引数は必須です。

解説

エラー

  • 253 を超えるパラメーターを入力すると、Excel は #VALUE! を返します。 エラーを返します。

  • LAMBDA 関数に渡された引数の数が正しくない場合、Excel は #VALUE! を返します。 エラーを返します。

  • LAMBDA 関数をそれ自体から呼び出し、呼び出しが循環している場合、Excel は #NUM! を返すことができます。 再帰呼び出しが多すぎる場合のエラー。

  • セル内から LAMBDA 関数も呼び出さずにセル内に LAMBDA 関数を作成すると、Excel は #CALC! を返します。 エラーのあるセルを選びます。

LAMBDA 関数を作成する

ここでは、LAMBDA が意図したとおりに動作し、ネイティブ Excel 関数の動作によく似ているかどうかを確認するための手順を示します。

__

手順 1: 数式をテストする

calculation 引数で使用する数式が正しく機能していることを確認します。 これは、LAMBDA 関数を作成するときに、数式が動作することを確認し、エラーや予期しない動作が発生した場合にその式を除外できるため、非常に重要です。 詳細については、「 target=”_blank” title=”Excel の数式の概要” rel=”noopener”>Excel の数式の概要」および「 target=”_blank” title=”Excel で簡単な数式を作成する” rel=”noopener”>Excel で簡単な数式を作成する」を参照してください。

__

手順 2: セルに LAMBDA を作成する

適切な手順は、セル内で LAMBDA 関数を作成してテストし、定義やパラメーターの渡しなど、正しく動作することを確認することです。 #CALC! を回避するには、 エラーが発生しました。すぐに結果を返すための LAMBDA 関数の呼び出しを追加してください:

=LAMBDA function ([parameter1, parameter2, …],calculation) (function call)

次の例では、2 の値を返します。

=LAMBDA(number, number + 1)(1)

__

手順 3: 名前マネージャーに LAMBDA を追加する

LAMBDA 関数を完成したら、最終的な定義のために名前マネージャーに移動します。 これにより、ラムダ関数にわかりやすい名前を付け、説明を入力し、ブック内の任意のセルから再利用できるようにします。 LAMBDA 関数は、文字列定数、セル範囲、テーブルなど 、任意の名前に対して可能な限り管理することもできます。

手順

  1. 次のいずれかの操作を行います。

    • Excel for Windows で、[数式] > [名前マネージャー] を選択します。

    • Excel for Mac で、[数式] > [名前の定義] を選択します。

  2. [新規] 選択し、[新しい名前] のダイアログ ボックスに情報を入力します:

名前:LAMBDA 関数の名前を入力します。
対象:ブックが既定です。 個々のシートも使用できます。
コメント:省略可能ですが、強く推奨されます。 255 文字まで入力できます。 関数の目的と、引数の正しい数と型を簡単に説明します。 数式を入力し、数式オートコンプリート(Intellisense とも呼ばれます) を使用すると、[関数の挿入] ダイアログ ボックスとツールヒント ( 計算 引数) として表示されます。
参照先LAMBDA 関数を入力します。

例:

  1. LAMBDA 関数を作成するには、[OK] を選択します。

  2. [名前マネージャー] ダイアログ ボックスを閉じるには、[閉じる] を選択します。

詳細については、「 target=”_blank” title=”名前マネージャーを使用する” rel=”noopener”>名前マネージャーを使用する」を参照してください。

__

例 1: 華氏を摂氏に変換する

名前マネージャーで次を定義します。

名前:ToCelsius
対象:ブック
コメント:華氏温度を摂氏に変換する
参照先=LAMBDA(temp, (5/9) * (Temp-32))

次の表のサンプル データをコピーし、新しい Excel ワークシートのセル A1 に貼り付けます。 必要に応じて、列幅を調整してすべてのデータを表示してください。

データ
104
86
68
50
32
数式結果
=TOCELSIUS(A2)40
=TOCELSIUS(A3)30
=TOCELSIUS(A4)20
=TOCELSIUS(A5)10
=TOCELSIUS(A6)0

__

例 2: 斜辺を計算する

名前マネージャーで次を定義します。

名前:斜辺
対象:ブック
コメント:直角三角形の斜辺の長さを返します
参照先=LAMBDA(a, b, SQRT((a^2+b^2)))

次の表のサンプル データをコピーし、新しい Excel ワークシートのセル A1 に貼り付けます。 必要に応じて、列幅を調整してすべてのデータを表示してください。

データ
34
512
724
940
数式結果
=HYPOTENUSE(A2,B2)5
=HYPOTENUSE(A3,B3)13
=HYPOTENUSE(A4,B4)25
=HYPOTENUSE(A5,B5)41

__

例 3: 単語をカウントする

名前マネージャーで次を定義します。

名前:CountWords
対象:ブック
コメント:テキスト文字列内の単語数を返します
参照先=LAMBDA(text, LEN(TRIM(text)) – LEN(SUBSTITUTE(TRIM(text), " ", "")) + 1)

次の表のサンプル データをコピーし、新しい Excel ワークシートのセル A1 に貼り付けます。 必要に応じて、列幅を調整してすべてのデータを表示してください。

データ
何かが道をやってくる
来た、見た、勝った。
A quick brown fox jumped over the lazy dog.
ルーク、フォースを使え!
数式結果
=COUNTWORDS(A2)5
=COUNTWORDS(A3)6
=COUNTWORDS(A4)9
=COUNTWORDS(A5)4

__

例 4: 感謝祭の日付を検索する

名前マネージャーで次を定義します。

名前:ThanksgivingDate
対象:ブック
コメント:特定の年の米国の感謝祭に該当する日付を返します
参照先=LAMBDA(year, TEXT(DATE(year, 11, CHOOSE(WEEKDAY(DATE(year, 11, 1)), 26, 25, 24, 23, 22, 28, 27)), "mm/dd/yyyy"))

次の表のサンプル データをコピーし、新しい Excel ワークシートのセル A1 に貼り付けます。 必要に応じて、列幅を調整してすべてのデータを表示してください。

データ
2020 年
2021 年
2022 年
2023 年
2024 年
数式結果
=THANKSGIVINGDATE(A2)11/26/2020
=THANKSGIVINGDATE(A3)11/25/2021
=THANKSGIVINGDATE(A4)11/24/2022
=THANKSGIVINGDATE(A5)11/23/2023
=THANKSGIVINGDATE(A6)11/28/2024

補足説明

Excel Tech Communityで、いつでも専門家に質問できます。また、コミュニティでは、サポートを受けられます。

関連項目

target=”_blank” title=”LET 関数” rel=”noopener”>LET 関数

target=”_blank” title=”Excel でカスタム関数を作成する” rel=”noopener”>Excel でカスタム関数を作成する

上部へスクロール