Applies ToExcel for Microsoft 365 Excel for Microsoft 365 for Mac Excel for the web Excel 2021 Excel 2021 for Mac
ご利用のブラウザーではビデオがサポートされていません。

LET 関数は、計算結果に名前を割り当てます。 これにより、中間計算、値、定義名などを数式内に格納できます。 これらの名前は LET 関数の範囲内にのみ適用されます。 プログラミングの変数と同様に、LET は Excel のネイティブな数式構文を使用して実行されます。

Excel の LET 関数を使用するには、名前と関連する値のペア、そのすべてを使用する計算を定義します。 少なくとも 1 つの名前/値のペア (変数) を定義する必要があり、LET は最大 126 組をサポートします。

LET の図

利点

  • パフォーマンスの向上 1 つの数式内に同じ式を複数回記述した場合、Excel はその結果を複数回計算します。 LET を使用して式を名前で呼び出し、Excel で 1 回だけ計算させることができます。

  • 快適な閲覧と構成 特定の範囲参照またはセル参照で何を参照したか、何を計算していたか、同じ式をコピー/貼り付けしたかなどを覚えておく必要はもうありません。 変数を宣言して名前を付ける機能を使用して、自分と式のコンシューマーにとってわかりやすいコンテキストを割り当てることができます。

= LET (name1、name_value1、calculation_or_name2、[name_value2、calculation_or_name3...])

引数

説明

name1

必須

最初に割り当てる名前。 文字で始まる必要があります。 数式の出力であったり、範囲の構文と競合していたりしてはなりません。

name_value1

必須

name1 に割り当てられている値。

calculation_or_name2

必須

以下のいずれかになります。

  • LET 関数内のすべての名前を使用する計算。 LET 関数の最後の引数でなければなりません。

  • 2 番目の name_value に割り当てる 2 番目の名前。 名前が指定されている場合、name_value2 と calculation_or_name3 が必須です。

name_value2

任意

calculation_or_name2 に割り当てられている値。

calculation_or_name3

任意

以下のいずれかになります。

  • LET 関数内のすべての名前を使用する計算。 LET 関数の最後の引数は計算でなければなりません。

  • 3 番目の name_value に割り当てる 3 番目の名前。 名前が指定されている場合、name_value3 と calculation_or_name4 が必須です。

注: 

  • 最後の引数は、結果を返す計算である必要があります。

  • 変数の名前は、名前マネージャーで使用できる有効な名前と一致します。 たとえば、"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))

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。