编写函数公式,嵌套?辅助列还是上“Let”?
Lv.2 潜力创作者
我登录WPS社区,浏览相关教程和文档,正跟IT大🐮学习高级功能的使用方法。同事小白不知什么时候走到我的工位旁边,探头看了看我的屏幕,一脸惊讶地说:“哇,你WPS社区经验值都6级了,这得花了多少时间啊!”
我抬起头,笑着回应道:“哈哈,其实也没多久,主要是最近项目里用WPS的地方多,边学边用就升上来了。你要是感兴趣,我也可以教你几招。”
小白眼睛一亮,凑近问道:“真的吗?谢谢老哥,那你快教教我,编写函数公式时,嵌套好还是辅助列好?还有那个丁先令老师写的‘LET'公式,好长一串括弧逗号,我看了都头晕恶心想吐,简直就是妇女怀孕的感觉!”
💡我想了想,解释道:“其实没有绝对的优劣,主要看具体场景。嵌套公式逻辑紧凑,但复杂了容易出错,也不好维护;辅助列思路清晰,一步步拆解,排查问题也方便,但会占用更多列空间。而使用LET函数,可以在一个公式内定义变量,既避免了深嵌套,又不用占用额外的辅助列,是中间路线的好选择。”
小白:“能举个例子🌰吗”
我:“好吧,请看我电脑上的这个'销售业绩评级2026.xlsx'文件,同一份工作表,用三种不同写法得到完全相同的结果;绩效等级确定规则:‘利润>10000 优秀,>5000 良好,否则 一般。’你先看第一种,嵌套公式的做法。”
我切换回表格,指着张三那行的E列说:“你看,我这里用的就是嵌套公式。直接在单元格里写一个IF函数,判断利润是否大于10000,是就显示‘优秀’,否则再嵌套一层IF判断是否大于5000,是就显示‘良好’,都不满足就显示‘一般’。公式是:=IF(B2-C2>10000,"优秀",IF(B2-C2>5000,"良好","一般"))。虽然只用一个单元格就搞定了,但括号一多,就有点眼花缭乱了。”
我继续在表格里操作起来,说:“你看,第二种做法是先用辅助列把利润算出来,再根据利润值判断绩效等级。”我指着D列和E列继续道:“在D2单元格里输入公式=B2-C2,算出张三的利润,然后下拉填充到其他行。接着在E2单元格里写=IF(D2>10000,"优秀",IF(D2>5000,"良好","一般")),同样下拉填充。这样每一步的结果都清清楚楚,D列是辅助列利润,E列是最终绩效评级,哪里出错了也容易排查。”
小白说:“哥,能用IFS函数代替嵌套的IF吗?那样写起来会不会更简洁一些?”
我笑着回答:“当然可以!IFS函数确实比多层嵌套的IF更简洁,尤其适合这种多条件判断的场景。用IFS来写这个绩效评级,公式就是:=IFS(D2>10000,"优秀",D2>5000,"良好",D2<5000,"一般")。每个条件挨个写,不用再一层层套括号,逻辑一眼就能看明白。”
我切换到张三那行的E列,输入公式并解释道:“好,既然你也觉得IFS函数比IF好用,那就给你演示一下第三种——'LET+IFS'函数的写法。你看,先用LET定义一个变量‘利润’,等于B2-C2,然后在IFS里直接引用这个变量名。公式是:=LET(利润,B2-C2,IFS(利润>10000,"优秀",利润>5000,"良好",利润<5000,"一般"))。这样既不用辅助列,嵌套也少了一层,逻辑更清晰了。”
小白恍然大悟:“哦,原来LET函数就是在公式里自己先设个中间变量,后面直接引用,既方便又好读!”
我点点头,补充道:“没错,LET函数的核心优势就是把重复计算的中间结果用变量存起来,不仅让公式更短、更易读,还能提升计算效率——因为每个变量只计算一次,不会重复运算。三种方法各有千秋,你以后写公式时可以根据实际情况灵活选择。”
小白听完,又问道:“还有没有复杂一点的?”
我微微一笑,在电脑里搜索了一下,说:“当然有,再看这个文件’销售绩效评级表2026.XLSX‘,也使用‘LET+IFS’函数的方法。用LET定义第一个变量‘有效销售额’,等于B2*C2,即‘销售额(万)’*‘回款率’”;然后定义第二个变量‘有效客户数’,等于D2*(1-E2),即‘客户数’*‘(1-退货率)’;再定义第三个变量‘综合分’,等于‘有效销售额*0.6+有效客户数*0.4’。销售绩效综合评级规则为‘综合分>=180,"⭐优秀",综合分>=100,"✅良好",综合分>=60,"😐一般",TRUE(),"⚠️待改进"’。最后用‘IFS'函数引用这三个变量,得出综合评级结果。
LET公式=’=LET(有效销售额,B2C2,有效客户数,D2(1-E2),综合分,有效销售额0.6+有效客户数0.4,IFS(综合分>=180,"⭐优秀",综合分>=100,"✅良好",综合分>=60,"😐一般",TRUE(),"⚠️待改进"))‘。”
小白看完,若有所思地点了点头,追问道:“那在实际工作中,这三种方法你用得最多的是哪一种呢?”
💡我回答说:“我的经验是还是要看场景来定。简单判断的情况,直接嵌套就够了,没必要绕弯子。逻辑复杂且需频繁维护,优先辅助列,可读性好。逻辑较复杂但不想占列,用LET函数,两全其美,既省列又清晰。”
小白听完,连连点头,感慨道:“原来如此!今天我真是收获满满,从嵌套到辅助列,再到LET函数,我算长见识了。以后写公式我可得多用用LET,防晕!”
“说得对,LET函数确实是个‘防晕神器’。”我笑着拍了拍小白的肩膀,“回去可以拿这个逻辑判断非常简单的‘销售业绩评级’文件多练练手,把嵌套、辅助列和LET三种方法都亲手敲一遍,很快就熟了。”
“💪!”
Lv.2 潜力创作者
Lv.2 潜力创作者
Lv.2 潜力创作者
Lv.2 潜力创作者
Lv.3 优质创作者
Lv.2 潜力创作者
Lv.2 潜力创作者
Lv.2 潜力创作者
Lv.2 潜力创作者
Lv.3 优质创作者
Lv.2 潜力创作者