函数 LET 将名称分配给计算结果。 这样就可存储中间计算、值或定义公式中的名称。 这些名称仅适用于函数的范围 LET 。 与编程中的变量类似, LET 是通过 Excel 的本机公式语法完成的。
LET若要在 Excel 中使用 函数,请定义名称对和关联的值,以及使用所有这些值的计算。 必须 (变量) 定义至少一个名称/值对,并且 LET 最多支持 126 个。
优点
-
提高了性能 如果在公式中多次写入同一表达式,Excel 会多次计算该结果。
LET允许按名称调用表达式,让 Excel 计算表达式一次。 - 轻松阅读和撰写 不再需要记住特定区域/单元格引用所引用的内容、计算执行的操作或复制/粘贴同一表达式。 借助可声明和命名变量的能力,你可为自己和公式使用者提供有意义的上下文。
语法
=
LET (name1、name_value1、calculation_or_name2、[name_value2、calculation_or_name3...])
| 参数 | 说明 |
|---|---|
|
name1 必需 |
要分配的第一个名称。 必须以字母开头。 不能是公式的输出,也不能与范围语法冲突。 |
|
name_value1 必需 |
分配给 name1 的值。 |
|
calculation_or_name2 必需 |
下列任一项:
|
|
name_value2 可选 |
分配给 calculation_or_name2 的值。 |
|
calculation_or_name3 可选 |
下列任一项:
|
注意
- 最后一个参数必须是会返回结果的计算。
- 变量的名称与可在名称管理器中使用的有效名称一致。 例如,“a”有效,但“c”无效,因为后者与 R1C1 样式参考冲突。
示例
示例 1
请思考一个简单的表达式“SUM(x, 1)”,其中 x 是一个命名参数,可向它赋值(在本例中,x 的赋值为 5)。
=
LET (x,5,SUM (x,1) )
将此公式输出到单元格后,它将返回值 6。
示例 2
假设你有一些原始销售数据,而你想要筛选该数据来显示某位人员并在所有空白单元格中添加一个破折号。
| 未筛选的数据 | 已筛选的数据 |
|---|---|
|
|
虽然上述操作可以在没有 的情况下 LET完成,但使用 LET 可以提高公式的可读性,并且计算速度是没有 LET的两倍。
示例数据
如果你想要亲自操作此示例,请将下表复制到空白工作表的单元格 A1。
| 销售代表 | 负责区域 | 产品 | 利润 |
|---|---|---|---|
| 柏隼 | 东部 | 苹果 | ¥1.33 |
| 何石 | 南部 | 香蕉 | ¥0.09 |
| 柏隼 | 西部 | 芒果 | ¥1.85 |
| 何石 | 北部 | ¥0.82 | |
| 何石 | 西部 | 香蕉 | ¥1.25 |
| 柏隼 | 东部 | 苹果 | ¥0.72 |
| 何石 | 北部 | 芒果 | ¥0.54 |
原始公式
=IF(ISBLANK(FILTER(A2:D8,A2:A8="何石")),"-", FILTER(A2:D8,A2:A8="何石"))
公式使用 LET
=LET ( filterCriteria,“Fred”, filteredRange,FILTER (A2:D8,A2:A8=filterCriteria) ,IF (ISBLANK (filteredRange) ,“-”, filteredRange) )