想在 excel 里做一套能反复复用的复杂计算模型,最实用的搭配就是先用 let 把中间变量拆出来,再用 lambda 把整段公式封装成自己命名的函数。好处特别实在:公式不用挤在一个单元格里写得老长,之后改规则、补条件、换参数都好维护很多。
要是你现在做表格,已经碰到公式重复计算、嵌套太深,一动公式就怕牵一发动全表的情况,直接先把 LET 用起来就行。等公式结构跑顺了,再用 LAMBDA 封装成专属函数,之后整个工作簿用起来都省心很多。
先理解 LET 的基本写法
LET 的核心逻辑特别好懂:先给中间结果起个名字,后面直接拿这个名字参与运算。常规写法就是把变量名、变量值、最后要输出的计算式按顺序填进函数里,Excel 会先把前面定义的变量都记下来,最后跑最末尾的结果公式。

刚上手不用一下子定义一大堆变量,先把最常重复出现的那段抽出来就行,比如销量区间、查找结果、折扣值或者评分等级,等整个模型跑稳了再接着拆细分,公式反而更好控制。
用 LET 先把复杂公式拆成可读结构
很多老公式写得没法看,不是 Excel 算不了,而是同一个 MATCH、INDEX 或条件判断被反复塞在同一行里。把这些中间结果先命名成 DATA、x、y 这类变量,最后输出的结果表达式会短很多,之后查错的时候也能一眼找到哪一步出了问题。

做查找类模型的时候这个优势特别明显,比如先把数据源区域定义成 DATA,再把行号、列号分别存进变量,最后只保留一个 INDEX(DATA,x,y) 之类的结果式,之后别人接手这张表,也能很快读懂你的逻辑。
再用 LET 减少重复计算
LET 不只是能让公式变好看,还能避免同一段计算被 Excel 反复跑很多次。像排名判断、区间分级、重复提取文本这类场景,要是前面算出来的结果后面要用到好几次,先存成变量再调用,比反复写同一段表达式要稳得多。
诊断并修复涉及公式、命名范围、Power Query 刷新、数据透视表、VBA/宏保存等问题的 Microsoft Excel XLSX 工作簿

等表格数据量上来之后,这种差别会更明显。尤其是几千行以上的数据表、条件判断很多的绩效模型,或者层层嵌套的汇总表,把重复运算抽成变量之后,后续维护速度和 Excel 的重算压力都会轻很多。
把成熟公式升级成 LAMBDA 自定义函数
等你用 LET 写的版本完全跑通了,就可以着手封装成 LAMBDA。操作很简单:把原来固定写死在单元格里的输入项改成可传入的参数,然后去名称管理器里给这个函数起个专属名字就行。之后不用每次再复制整段长公式,直接像用普通函数一样调用就好。


定义的时候要多留意参数顺序,谁是输入值、谁是范围、谁是条件,最好按你平时最常用的调用习惯来排,不然函数虽然建好了,每次使用时还得反复查参数位置,反而会拖慢效率。
在工作表里调用并验证结果
LAMBDA 函数建好以后,回到单元格里就能像普通函数那样直接调用。最稳妥的做法是先拿一组你已经知道结果的数据试一次,把新函数结果和旧公式结果并排对照,确认完全一致后,再推广到整列或整套模型里。

如果调用后报错,优先检查三件事:名称管理器里的函数名有没有写对,参数数量是不是和定义时一致,以及 LET 里最后返回的那段结果表达式有没有引用错变量。把这几个点核对完,大多数 LET 和 LAMBDA 模型都能顺利跑起来。

















