LET関数は、計算結果に名前を割り当てます。 これにより、中間計算、値、定義名などを数式内に格納できます。 これらの名前は、 LET 関数のスコープ内でのみ適用されます。 プログラミングの変数と同様に、 LET は Excel のネイティブ数式構文を使用して実現されます。
Excel で LET 関数を使用するには、名前と関連する値のペアと、それらをすべて使用する計算を定義します。 少なくとも 1 つの名前と値のペア (変数) を定義する必要があり、 LET は最大 126 個をサポートします。
利点
-
パフォーマンスの向上 同じ式を 1 つの数式に複数回記述すると、その結果が複数回計算されます。
LETでは、名前で式を呼び出し、Excel で 1 回計算できます。 - 簡単な読み取りと構成 特定の範囲/セル参照が何を参照したか、計算が何を行っていたか、同じ式をコピー/貼り付けたかを覚えておく必要はありません。 変数を宣言して名前を付ける機能を使用して、自分と式のコンシューマーにとってわかりやすいコンテキストを割り当てることができます。
構文
=
LET(name1、name_value1、calculation_or_name2、[name_value2、calculation_or_name3...])
| 引数 | 説明 |
|---|---|
|
name1 必須 |
最初に割り当てる名前。 文字で始まる必要があります。 数式の出力であったり、範囲の構文と競合していたりしてはなりません。 |
|
name_value1 必須 |
name1 に割り当てられている値。 |
|
calculation_or_name2 必須 |
以下のいずれかになります。
|
|
name_value2 任意 |
calculation_or_name2 に割り当てられている値。 |
|
calculation_or_name3 任意 |
以下のいずれかになります。
|
注
- 最後の引数は、結果を返す計算である必要があります。
- 変数の名前は、名前マネージャーで使用できる有効な名前と一致します。 たとえば、"a" は有効ですが、"c" は R1C1 形式の参照と競合するため有効ではありません。
使用例
使用例 1
単純な式 "SUM(x、1)" の場合、x は値を割り当てることができる名前付きの変数です (この場合、x には値 5 が割り当てられます)。
=
LET(x, 5, SUM(x, 1))
この数式をセルに入力すると、値 6 が返されます。
使用例 2
たとえば、未加工の売上データがあり、そのデータをフィルター処理して 1 人のユーザーを表示し、空白セルにダッシュを追加するとします。
| フィルター処理されていないデータ | フィルター処理されたデータ |
|---|---|
|
|
上記は LETなしで実行できますが、 LET を使用すると、数式の読みやすさが向上し、 LETなしで 2 倍の速度で計算されます。
サンプル データ
この例を自分で調べる場合は、次の表を空白のワークシートのセル A1 にコピーします。
| 社員名 | 地域 | 製品 | 利益 |
|---|---|---|---|
| Amy | 東部 | りんご | $1.33 |
| Fred | 南部 | バナナ | $0.09 |
| Amy | 西部 | マンゴー | $1.85 |
| Fred | 北部 | $0.82 | |
| Fred | 西部 | バナナ | $1.25 |
| Amy | 東部 | りんご | $0.72 |
| Fred | 北部 | マンゴー | $0.54 |
元の数式
=IF(ISBLANK(FILTER(A2:D8,A2:A8="Fred")),"-", FILTER(A2:D8,A2:A8="Fred"))
を使用した数式 LET
=LET( filterCriteria,"Fred", filteredRange, FILTER(A2:D8,A2:A8=filterCriteria), IF(ISBLANK(filteredRange),"-", filteredRange))