ExcelのLET関数の使い方をお探しですね。
広告
ExcelのLET関数で数式をスッキリ整理!変数が使えて読みやすくなる便利ワザ
Excelで複雑な数式を作っていると、IF関数やVLOOKUP、FILTER、文字列操作などを組み合わせて、どんどん横に長くなっていきますよね。
特に、同じセル範囲や同じ計算を何度も書いていると、後から見返したときに「これ何してたんだっけ…?」となりがちです。
しかも、修正するときに一部だけ直し忘れてミスしたり、ブック全体が重くなったりすることも。
そんなときに役立つのが**LET関数**です。
LET関数を使えば、数式の中だけで使える「変数」みたいなものを作れて、長くて複雑な数式を読みやすく、管理しやすい形に整理できるんです。
この記事では、LET関数の基本的な使い方から、実際の仕事で使える書き換え例、使うべき場面と注意点まで、わかりやすく解説していきます。
LET関数って何?数式の中で名前を付けて使える便利な関数
LET関数は、Excelの数式の中で「この計算結果に名前を付けておこう」というのができる関数です。
プログラミングでいう「変数」に近い考え方ですね。
ただし、この名前はLET関数の中だけで使えるもので、他のセルには影響しません。
例えば、同じセル範囲をSUM、AVERAGE、MINなど複数の関数で何度も使いたいとき、普通なら同じ範囲を何度も書かないといけませんよね。
でもLET関数を使えば、その範囲に「範囲」という名前を付けておいて、あとはその名前で呼び出せばOKなんです。
基本的な書き方はこんな感じです。
“`excel
=LET(名前1, 値または計算式1, 名前2, 値または計算式2, 最終的な計算)
“`
一番シンプルな例を見てみましょう。
“`excel
=LET(x,1000+100,x+A1)
“`
この式では、まず「1000+100」という計算結果に「x」という名前を付けています。
そして最後に「x+A1」を計算しているので、A1に11が入っていれば、結果は1111になります。
LET関数は「名前」と「値(または計算式)」をセットで指定して、最後にセルに表示したい計算式を書く、という流れです。
これがわかれば、複雑に見えるLET関数も「先に部品に名前を付けて、最後に組み立てる関数」って考えられるようになります。
LET関数で付けた名前は、そのLET関数の中だけで有効です。
別のセルや別の数式からは見えないので、ブック全体に影響を与える心配がないのも安心ポイントです。
ただし、名前を付けるときにはいくつかルールがあります。
「A1」「B2」みたいにセル番地っぽい名前は使えないし、先頭に数字を置くこともできません。
でも、日本語は使えるので、「範囲」「合計」「判定」みたいに意味がわかる名前を付けると、数式がグッと読みやすくなりますよ。
長くて複雑な数式がスッキリ!LET関数のメリット
LET関数の一番のメリットは、長い数式を「人間が読める形」に近づけられることです。
Excelの複雑な数式って、計算そのものよりも「どこで何をしているのか」を読み解くのに時間がかかりますよね。
特にIF関数、AND関数、FILTER関数、FIND関数、MID関数なんかを組み合わせた数式は、かっこが何重にも重なって、ちょっと条件を変えるだけでも慎重になります。
LET関数を使うと、途中の計算にわかりやすい名前を付けられるので、数式を上から順に読めるようになるんです。
例えば、満足度アンケートで「合計が20以上、平均が5以上、最低評価が4以上なら○、それ以外は×」と判定したいとき、普通の数式だとこうなります。
“`excel
=IF(AND(SUM(B2:E2)>=20,AVERAGE(B2:E2)>=5,MIN(B2:E2)>=4),”○”,”×”)
“`
これでも結果は出るんですが、範囲「B2:E2」が3回も出てきていますよね。
後から集計範囲を「B2:F2」に変更したくなったら、3か所全部を直さないといけません。
1か所だけ直し忘れると、見た目は正しくても実際には間違った判定になっちゃう可能性があります。
これをLET関数で書き換えると、こんな風に整理できます。
“`excel
=LET(
範囲,B2:E2,
合計,SUM(範囲),
平均,AVERAGE(範囲),
最小,MIN(範囲),
判定,AND(合計>=20,平均>=5,最小>=4),
IF(判定,”○”,”×”)
)
“`
この数式では、最初に「範囲」を決めて、その範囲を使って「合計」「平均」「最小」を計算しています。
そして「判定」という名前で条件をまとめて、最後にIF関数で結果を出しています。
処理内容が行ごとに分かれているので、後から見ても何をしているかわかりやすいし、範囲を変えたいときも最初の「範囲,B2:E2」だけを直せばOKです。
もう一つの良いところは、処理が軽くなることが期待できる点です。
LET関数では、同じ計算を何度も書く代わりに、一度計算した結果を名前で再利用できます。
大量の行でFILTER関数やXLOOKUP関数、文字列検索のFIND関数なんかを使っている場合、同じ処理の繰り返しが減ることで、再計算の負担を減らせることがあるんです。
すべての数式が劇的に速くなるわけではないですが、「同じ重い計算を何度もやってる数式」ほど、LET関数の効果を感じやすくなります。
実務で使える例:IF判定と文字列抽出をわかりやすく整理
LET関数は、単に数式を短くするだけじゃなくて、複雑な処理を段階的に見せるために使うと効果的です。
例えば、商品コードや型番で「ABC-12345-BK」みたいにハイフンで区切られた文字列から一部を取り出す場面ってありますよね。
普通の数式では、FIND関数でハイフンの位置を探して、MID関数で必要な文字を取り出します。
でも、2つ目のハイフン位置を探す処理が入ると、FIND関数の中にさらにFIND関数が入って、数式が一気に読みにくくなります。
例えば、A2に「ABC-12345-BK」と入力されていて、真ん中の「12345」だけを取り出したいとき、LET関数を使わないとこんな数式になりがちです。
“`excel
=MID(A2,FIND(“-“,A2)+1,FIND(“-“,A2,FIND(“-“,A2)+1)-FIND(“-“,A2)-1)
“`
この式は正しく動くんですが、どのFIND関数が1つ目のハイフンを探してて、どれが2つ目を探してるのか、パッと見ではわかりにくいですよね。
LET関数で書き換えると、こんな風に意味を分けて表現できます。
“`excel
=LET(
文字列,A2,
先頭区切り,FIND(“-“,文字列),
次の区切り,FIND(“-“,文字列,先頭区切り+1),
MID(文字列,先頭区切り+1,次の区切り-先頭区切り-1)
)
“`
この数式では、A2を「文字列」、1つ目のハイフン位置を「先頭区切り」、2つ目のハイフン位置を「次の区切り」として扱っています。
最後のMID関数では、先頭区切りの次の文字から、次の区切りの手前までを取り出していることが読み取れます。
数式の長さ自体は極端に短くならない場合もあるんですが、処理の意味が明確になるので、修正したり引き継いだりしやすい数式になるんです。
また、FILTER関数みたいに同じ抽出結果を複数回使う場面でもLET関数は便利です。
例えば、条件に合うデータを抽出して、空なら「該当なし」と表示したいとき、LET関数を使わないと同じFILTER式を複数回書くことがあります。
LET関数なら、抽出結果に名前を付けてから判定できるので、計算の重複を減らせます。
“`excel
=LET(
条件,”田中”,
抽出,FILTER(A2:D100,A2:A100=条件),
IF(ISERROR(抽出),”該当なし”,抽出)
)
“`
実務では、数式を完成させることだけじゃなくて、数か月後に自分や同僚が読んで修正できることも大事です。
LET関数は、数式の中に「処理の見出し」を付けるような役割があるので、複雑なブックほど価値が高まります。
特に月次集計、売上判定、在庫管理、アンケート集計、文字列整形など、条件分岐や中間計算が多い作業で活躍しますよ。
LET関数を使うべき場面と注意点:無理に使わないのも大事
LET関数は便利なんですが、すべての数式に使えばいいってわけじゃありません。
例えば「=A1+B1」みたいな単純な計算にLET関数を使うと、かえって数式が長くなって、読む手間が増えちゃいます。
LET関数が向いているのは、こんな場面です。
– 同じ範囲や同じ関数が何度も出てくる数式
– ネストが深くなって意味を追いにくい数式
– 後から条件変更が発生しやすい数式
つまり、短さだけじゃなくて「あとから直しやすいか」を重視したい場面で使うのが適切なんです。
LET関数を使うか迷ったときは、こんな観点で判断するとわかりやすいですよ。
– 同じセル範囲や同じ計算式を2回以上書いている
– IF関数やAND関数、FIND関数なんかのネストが深くなっている
– 後から条件や範囲を変更する可能性が高い
– 数式を他の人に引き継ぐ、または数か月後に自分で見直す必要がある
**注意点**としては、LET関数で付ける名前はわかりやすくすることが大切です。
「a」「b」「c」みたいに短すぎる名前は入力は楽なんですが、数式の意味を伝える力が弱くなります。
逆に、長すぎる名前を付けると式全体が読みにくくなるので、「範囲」「合計」「平均」「開始位置」「終了位置」「抽出結果」など、処理内容が一目でわかる程度の名前がちょうどいいです。
あと、LET関数はMicrosoft 365やExcel 2021以降など、比較的新しい環境で使える関数です。
古いExcelでブックを共有する場合は、相手の環境で数式が動くか確認しておくと安心ですね。
入力するときは、数式バーを広げて**Alt+Enter**で改行すると読みやすくなります。
LET関数は名前と計算式をセットで並べる構造なので、横一列に書くと長く見えちゃうんですが、改行して段階的に配置すれば処理の流れが明確になります。
Excelの数式は、結果が正しいだけじゃなくて、後から安全に直せることも品質の一部です。
LET関数を使えば、長くて複雑なネストをスッキリ・軽くしながら、数式の意図を残せます。
まずは、同じ範囲や同じ関数を何度も書いている既存の数式を一つ選んで、LET関数で整理してみてください。
きっと効果を実感できると思いますよ!
広告
