エクセルで、式の中の計算結果に名前を付けて、短く読みやすい式にするには LET関数を使います。=LET(小計,SUMPRODUCT(B3:B7,C3:C7),ROUND(小計*1.1,0)) のように、「小計」という名前で途中の計算を使い回せます。
同じ計算を何度も書く長い式が短くなり、あとから見たときに意味も分かりやすくなります。この記事では、LET関数の基本、名前を複数付ける方法、前の名前を使った計算、範囲に名前を付ける方法、結果を文章にする使い方までを、1つの表で説明します。下の練習ツールで、単価や数量を書き換えて結果の変わり方を試せます。
まず動かしてみよう|この記事のサンプルをその場で試せます
練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。
LET関数の書き方
| 引数 | 入れるもの | ポイント |
|---|---|---|
| 名前 | 式の中だけで使う名前 | 「小計」「税率」のように日本語も使えます。セル番地(A1など)と同じ形は使えません。 |
| 値 | 名前に入れる値・計算・範囲 | 前に付けた名前を使って計算することもできます。 |
| 計算式 | 最後に結果を出す式 | いちばん最後の引数が結果になります。 |
Microsoft 365・Excel 2021 以降で使えます。
LET関数の使い方|やりたいこと別の式
| やりたいこと | 式(例) | 結果 |
|---|---|---|
| 税込みの合計(LETなし) | =ROUND(SUMPRODUCT(B3:B7,C3:C7)*1.1,0) | 3366 |
| 小計に名前を付ける | =LET(小計,SUMPRODUCT(B3:B7,C3:C7),ROUND(小計*1.1,0)) | 3366 |
| 税率にも名前を付ける | =LET(小計,SUMPRODUCT(B3:B7,C3:C7),税率,0.1,ROUND(小計*(1+税率),0)) | 3366 |
| 平均より高い商品の数 | =LET(平均,AVERAGE(B3:B7),COUNTIF(B3:B7,”>”&平均)) | 2 |
| 範囲に名前を付ける | =LET(単価,B3:B7,MAX(単価)-MIN(単価)) | 370 |
| 結果を文章にする | =LET(合計,SUMPRODUCT(B3:B7,C3:C7),”合計は”&合計&”円”) | 合計は3060円 |

計算結果に名前を付ける
単価×数量の合計(3060)に「小計」という名前を付け、最後の式で 1.1 倍して丸めると 3366 です。LETを使わない =ROUND(SUMPRODUCT(B3:B7,C3:C7)*1.1,0) と同じ結果ですが、何を計算しているかが名前で分かります(SUMPRODUCT関数の使い方)。
▶ この式(F3)を、上の練習ツールで試す / この式(F4)を、上の練習ツールで試す
名前を複数付ける
「名前,値」の組を続けて書くと、名前をいくつでも付けられます。税率にも名前を付けると、式の中の 0.1 が何の数か一目で分かり、変えるときも1か所で済みます。結果は同じ 3366 です。
同じ計算を何度も使う
単価の平均(230)に名前を付け、平均より高い単価の数を数えると 2(ぶどう・もも)です。同じ計算を式の中で何度も使うとき、LET関数なら1回の計算で済むので、式が短く、計算も速くなります。
前の名前を使って計算する
後の名前の計算や最後の式では、前に付けた名前を使えます。数量の合計 15 を件数 5 で割って、平均の数量は 3 です。
範囲に名前を付ける
値には範囲も指定できます。単価の範囲に「単価」と名前を付けると、最高 450 と最低 80 の差は 370 です。
結果を文章にする
最後の式で文字とつなげると、合計は3060円 のように文章で表示できます。
LET関数がうまくいかないときの確認表
| 症状 | 考えられる原因 | 対処 |
|---|---|---|
| 「#NAME?」になる | 名前のつづりが違う、または Excel 2019 以前 | 名前の字を確かめる。古いExcelでは使えない。 |
| 式を確定できない(メッセージが出る) | 「名前,値」が組になっていない、最後の計算式がない | 「名前,値」の組と、最後の計算式があるか確かめる。 |
| 式を確定できない(名前の形) | A1・TAX1 のようにセル番地と同じ形の名前 | 「税率」「単価」など、セル番地と区別できる名前にする。 |
LET関数のよくある質問
付けた名前はほかのセルでも使える?
使えません。LET関数の名前は、その式の中だけで使えます。ブック全体で使いたいときは「数式」タブの「名前の定義」を使います(名前の定義の使い方)。
自分で関数を作るには?
LAMBDA関数を使うと、名前を付けた引数で計算する自分だけの関数を作れます。
あわせて読みたい:関連記事
練習用ファイル:練習用Excelファイル(.xlsx・無料)

コメント