使用 LET 命名步骤
存储并重复使用中间值,简化较长的公式
使用 LET 命名步骤 是 CoddyKit 上的免费 Excel Formulas Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Excel Formulas Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Excel Formulas Academy 课程共包含 4 节课。
当公式变得复杂时
您是否曾经写过一个很长的公式,把同一个计算重复了三四次?长公式难以阅读,重新计算速度慢,修复起来也很麻烦。
LET 函数可以解决这个问题。它允许您为某个值或计算指定一个名称,然后在公式中反复使用这个名称。您可以把它想象成把一个数字记在便签上,这样就不必重复计算。
LET 可用于现代版 Excel(Microsoft 365 和 Excel 2021)以及 Google Sheets。本课将教您为中间步骤命名,让复杂的公式变得易于阅读。
LET 的结构
LET 遵循一个简单的重复模式:多个名称和值对,最后以使用这些名称的计算结束。
- 定义一个或多个名称
- 为每个名称赋予一个值
- 使用这些名称完成并返回结果
最后一个参数始终是用于生成输出的计算。它之前的所有内容都以名称和值成对出现。
=LET(name1, value1, calculation_using_name1)您的第一个 LET 公式
我们先为一个值命名。假设单元格 A2 中存放的价格为 100。我们可以将其命名为 price,然后将它加倍。
这里,LET 创建名称 price,为它赋予来自 A2 的值,最后的参数 price*2 使用该名称。结果为 200。
与公式变长后相比,这种写法比 =A2*2 更易读。名称可以说明数字代表什么。
=LET(price, A2, price*2)避免重复计算
LET 最大的好处是只计算某个值一次,然后重复使用它。假设您需要两次计算税额:一次用于显示,一次用于将它加到总计中。
不使用 LET 时,您需要在两个位置写入 A2*0.2。使用 LET 后,您可以用名称 tax 计算一次,然后在需要的地方引用 tax。
这样做更快,因为电子表格只需进行一次乘法;同时也更清晰,因为名称表达了计算意图。
=LET(tax, A2*0.2, A2 + tax)定义多个名称
LET 可以轻松接受多个名称和值对。只需在最终计算之前继续添加即可。每个新名称甚至可以使用之前定义的名称。
在此示例中,我们先命名 rate,再命名 base,然后根据两者创建 tax 值。名称会按从上到下的顺序计算,因此 tax 可以依赖已经存在的 rate 和 base。
=LET(rate, 0.2, base, A2, tax, base*rate, base + tax)名称可以建立在之前的名称之上
这种链式结构正是 LET 强大的原因。您可以将复杂公式拆分为多个小型的命名步骤,使其读起来像句子。
subtotal= 数量乘以价格discount= 小计乘以折扣率- 结果 = 小计减去折扣
每一步都会引用前一步。阅读公式的人可以逐行理解其逻辑,而不必解读一个庞大的表达式。
=LET(subtotal, B2*C2, discount, subtotal*0.1, subtotal - discount)完整示例:净收入
我们来计算净收入。总收入位于 B2,税率位于 C2。我们要用总收入减去税额,并将结果四舍五入到两位小数。
我们先命名 gross,根据它计算 tax,然后返回四舍五入后的差值。公式虽然较长,但每一部分都很清楚。
=LET(gross, B2, tax, gross*C2, ROUND(gross - tax, 2))为函数结果命名
LET 名称可以存放任何函数的结果,而不仅仅是算术计算的结果。这对于原本需要重复执行的查找尤其有用。
这里,我们使用 XLOOKUP 查找一次值,将结果存储为 found,然后对它进行检查。如果查找不到,就显示提示;否则使用该值。这个开销较大的查找只会运行一次。
=LET(found, XLOOKUP(A2, Items, Prices), IF(found="", "Not found", found*1.1))有效名称的规则
LET 名称有几条规则:
- 必须以字母或下划线开头,不能以数字开头
- 不能包含空格(使用
unit_price,不要使用unit price) - 不能看起来像单元格引用,例如
A1或TAX1 - 不能与内置函数名称相同
坚持使用 total、rate 或 net 这样的清晰小写单词即可。
Google Sheets 中的 LET
好消息是:LET 在 Google Sheets 中的工作方式相同。语法、名称和值对,以及最终计算都完全一致。
这意味着您使用 LET 创建的公式可以在 Excel 和 Sheets 之间通用,而这对于较新的函数来说并不常见。无论您的团队使用 Microsoft 365 还是 Google Workspace,LET 的写法都相同。
=LET(qty, A2, price, B2, qty*price)何时使用 LET
当您注意到以下情况时,就可以使用 LET:
- 同一个子表达式出现了不止一次
- 公式太长,以至于您无法理清每一部分的作用
- 您希望某个较慢的查找或计算只运行一次
对于 =A2+B2 这样的小公式,使用 LET 就有些过度了。但当公式开始重复自身时,LET 会让它更短、更快,也更易于维护。
快速检查
测试您对 LET 结构的理解。
回顾:使用 LET 命名步骤
您已经学会了 LET 如何为中间值命名并重复使用它们,从而让长公式更易读、运行更快。
- 语法由重复的名称、值对组成,最后以计算结束
- 后续名称可以建立在之前的名称之上
- 某个值只计算一次,然后多次引用它的名称
- 名称不能包含空格、以数字开头,也不能使用类似单元格引用的文本
- LET 在 Excel 和 Google Sheets 中的工作方式完全相同
下一步,您将更进一步,使用 LAMBDA 定义自己的可复用函数。
=LET(subtotal, B2*C2, discount, subtotal*0.1, subtotal - discount)常见问题解答
「使用 LET 命名步骤」课时是免费的吗?
是的 — 「使用 LET 命名步骤」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Excel Formulas Academy 课程的其余内容,请升级到 CoddyKit PRO。 Excel Formulas Academy 课程共包含 4 节课。
「使用 LET 命名步骤」这节课中我会学到什么?
存储并重复使用中间值,简化较长的公式 你通过在浏览器中直接运行的动手代码来练习 Excel Formulas Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Excel Formulas Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Excel Formulas Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「使用 LET 命名步骤」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Excel Formulas Academy 课中编写并运行代码吗?
能。每节 Excel Formulas Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。