LET関数 – 論理

LET関数 – 計算に変数を導入して処理効率と可読性を高める関数


1. 使い方と活用例

LET関数は、名前付き変数を定義し、それを数式内で使用することで、同じ計算の繰り返しを避け、パフォーマンスと可読性を向上させる関数です。
従来は同じ数式を複数回書く必要がありましたが、LET関数を使うことで一度定義した名前(変数)を再利用できます。

2. 基本の書式

=LET(name1, name_value1, [name2, name_value2, ...], calculation)

3. 引数の説明

  • name1 – 必須。定義する変数の名前(数式内で使用)。
  • name_value1 – 必須。変数に代入する値や式。
  • [name2, name_value2, …] – 省略可能。追加の変数を定義可能。
  • calculation – 必須。上記で定義した変数を使用する最終計算式。

4. 使用シーン

  • 長い数式の中で繰り返し同じ計算をしている部分を簡潔にまとめたい場合。
  • 複雑なロジックの中で処理の意味を明確にするため、変数に名前を付けたい場合。
  • 複数の中間計算を変数に分けて保持したい場合(ネストを減らして読みやすくする)。

5. 応用のポイント

LET関数では、定義した変数の名前は一時的なもので、ワークシート全体ではなくその関数内でのみ有効です。
名前は文字列ではなく、変数名として直接指定します(引用符は不要)。
複数の変数を定義することで、IFやSUM、AVERAGEなど他の関数と組み合わせた高度なロジックも構築できます。

6. 具体例とその解説

次の例では、セルA1の値に10を加えてから2倍にする処理をLET関数で定義しています。

=LET(x, A1 + 10, x * 2)

この式では、変数xを「A1 + 10」として定義し、そのxに2を掛けた結果を返します。
同じ処理を従来の式で書くと「(A1 + 10) * 2」となりますが、LET関数では中間値を名前付きで明示できるため、より読みやすくなります。

もう少し複雑な例として、平均と合計を一度に計算し、条件付きの処理をする式です。

=LET(
  total, SUM(A1:A10),
  avg, AVERAGE(A1:A10),
  IF(avg > 50, total * 1.1, total)
)

この式では、A1:A10の合計と平均をそれぞれ変数として定義し、平均が50を超えていれば合計に10%上乗せして返す処理をしています。
このように、可読性の高い数式を構築するのにLET関数は非常に便利です。

7. 関連関数の紹介

  • LAMBDA関数 – 独自の関数を定義できる関数。LET関数と組み合わせて使うことが多い。
  • IF関数 – 条件によって処理を分岐させる基本的な関数。
  • SUM関数 – 数値の合計を求める関数。
  • AVERAGE関数 – 範囲の平均値を求める関数。
  • NAME関数(定義名) – セルや範囲に名前を付けて管理するExcelの機能(LET関数の変数とは異なる)。

8. まとめ

LET関数は、複雑な数式の中間処理を変数で整理し、読みやすく効率的な数式に変える強力な機能です。
再利用性やパフォーマンスの向上にも貢献し、LAMBDA関数と組み合わせることでより柔軟なカスタム関数も作成できます。
特に大規模な数式や計算負荷の高い処理では大きな効果を発揮します。

9. 対応バージョン

Excel 365およびExcel 2021以降で使用可能です。
Excel 2019以前のバージョンでは使用できません。