如何将多判断条件整合为单个Excel IF函数的技术咨询
如何将多判断条件整合为单个Excel IF函数的技术咨询
嗨,我来帮你把这些零散的判断条件整合成一个简洁的Excel IF函数!先把你的需求再明确下,确保我没理解错:
- 当
C7<0且F7<0时,返回G7 - 当
C7>0且F7>0时,返回G7-(C7+F7) - 当
(C7+F7)>0且C7<0时,返回G7-(C7+F7) - 当
(C7+F7)<0且C7<0时,返回G7-F7 - 当
(C7+F7)>0且F7<0时,返回G7-(C7+F7) - 当
(C7+F7)<0且F7<0时,返回G7
我先帮你梳理下这些条件的逻辑,把重复结果的场景归类,这样就能大幅简化公式:
- 唯一返回
G7-F7的场景:C7<0且两者之和为负 - 返回
G7的场景:F7<0且两者之和为负(已经包含了C7<0且F7<0的情况,因为这种情况下总和肯定为负) - 剩下的所有场景,统一返回
G7-(C7+F7)
基于这个梳理,我们可以写出嵌套IF函数:
=IF(AND(C7<0, C7+F7<0), G7-F7, IF(AND(F7<0, C7+F7<0), G7, G7-(C7+F7)))
如果你用的是Excel 2019及以后版本,或者Office 365,推荐用IFS函数,可读性更强,不需要嵌套:
=IFS(AND(C7<0, C7+F7<0), G7-F7, AND(F7<0, C7+F7<0), G7, TRUE, G7-(C7+F7))
我再帮你验证下每个条件是否都覆盖到了:
C7<0,F7<0:触发第二个IF的判断,返回G7✔️C7>0,F7>0:触发最后一个默认分支,返回G7-(C7+F7)✔️(C7+F7)>0,C7<0:触发最后一个默认分支,返回G7-(C7+F7)✔️(C7+F7)<0,C7<0:触发第一个IF判断,返回G7-F7✔️(C7+F7)>0,F7<0:触发最后一个默认分支,返回G7-(C7+F7)✔️(C7+F7)<0,F7<0:触发第二个IF判断,返回G7✔️
所有需求都完美覆盖啦!
备注:内容来源于stack exchange,提问作者Kavana Rao
相关产品推荐
相关产品推荐

