分享

哼!敢说比我写的IF函数公式更短!

 碧荷晨露 2015-02-13

前言:IF函数是工作中最常用的函数之一,但很多同学会把IF函数公式写的老长老长,今天兰色用5个示例教大家优化成简短的公式。

1、把负数转换为0


优化前:

=IF(A1<0,0,A1)


优化后:

=Max(A1,0)


点评该公式巧妙的利用Max函数求最大值的原理,对比两个数,如果小于0,就取最大值0.


------------------------------------------

2、累计数公式,


优化前:

=IF(isnumber(D1),C2+D1,C2)


优化后:

=N(D1)+C2


点评N函数可以把文本转换成0值,所以也不用再判断是不是数字。直接+即可。

---------------------------------------------

3、如果A1大于等于100取前两位,小于100取前一位


优化前:

=IF(A1>=100,LEFT(A1,2),LEFT(A1,1))


优化后:

=LEFT(A1,(A1>=100)+1)


点评(A1>=100)结果是TRUE或FALSE,在计算时相当于1或0,所以这里就不用再加判断了。


------------------------------------------

4、如果有任一个为空,公式返回不可比,否则显示'示可比'。


优化前:

=IF(C11='','不可比',IF(D11='','不可比',IF(E11='','不可比',IF(F11='','不可比',IF(G11='','不可比',IF(H11='','不可比',IF(I11='','不可比',IF(J11='','不可比',IF(K11='','不可比',IF(L11='','不可比',IF(M11='','不可比',IF(N11='','不可比','可比'))))))))))))


优化后:

=IF(COUNT(C10:N10)<12,'不可比','可比')


点评一个一个的判断,不如用COUNt函数统计非空值个数。


------------------------------------------

5、区间判断


优化前:

=IF(AND(C6>0,C6<=2),3,IF(AND(C6>2,C6<=8),1.5,IF(AND(C6>8,C6<=19),0.7,IF(AND(C6>19,C6<=29),1,IF(AND(C6>29,C6<=80),1.6,IF(AND(C6>80,C6<=100),1.7,IF(AND(C6>100,C6<=150),2.4,IF(AND(C6>150,C6<=200),3.2,IF(C6>200,4.0,0)))))))


优化后:

=LOOKUP(C6-1%%,{0;2;8;19;29;80;100;150;200},{3;1.5;0.7;1;1.6;1.7;2.4;3.2;4})


点评:这是一个典型的区间判断。LOOKUP函数可以返回 比查找的值小且和它最接近的值或对应第3个参数的值。因区间是>和<=形式,所以这里必须把值减去一个小数(C6-1%%)。如果不减,当C6=2时,返回的不是3,而是1.5。



书也买了一大堆,没心思看。教程也下载了好多,越看越迷糊。excel到底该怎么学?其实,通过
视频学习才是最好的学习途径,点左下角'阅读原文' 查看兰色幻想+小妖录制的超全的290集excel视频教程。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多