Excel教程下载和软件下载中心,Microsoft技术社区联盟成员,全球极具影响力的Excel门户,Office技术培训社区

一个函数问题,测试你的功力到几成?

2019-01-06  作者:ExcelHome  阅读:
今天老祝和大家分享一个函数应用的知识,看看你的Excel函数功力是不是使用的比较溜。
先来看下面的数据,要根据C列的部门在A列生成一组序号,如果有不同的部门,序号就增加1:


文艺青年这样用:
=SUMPRODUCT(1/COUNTIF(C$2:C2,C$2:C2))

这个公式的思路,实际上就是依次统计C列部门的不重复个数,感兴趣的小伙伴,可以点此了解一下公式解释哈。

走你青年这样用:
=SUM(C2<>C1,A1)

公式用C2<>C1,来对比C列当前行的部门是不是和上一行的部门名称相同,得到逻辑值TRUE或是FALSE。逻辑值作为SUM函数参数时,TRUE相当于1,FALSE相当于0,并且可以忽略单元格中的文本。
以A2单元格中的公式为例:
=SUM(C2<>C1,A1),C2单元格的“企划”不等于C1的“部门”,因此C2<>C1得到逻辑值TRUE,用它和A1作为SUM函数的参数,SUM函数忽略A1单元格的文本,只计算TRUE,最终得到计算结果1。
到了A3单元格,公式变成:
=SUM(C3<>C2,A2) ,C3单元格与C2相同,因此C2<>C1得到逻辑值FALSE,用它和A2单元格的序号1作为SUM函数参数,最终结果是2。
其他单元格的计算过程也是如此。

佛系青年这样用:
=(C2<>C1)+N(A1)

这个公式的思路和方法二相同,但是更为直接,用C2<>C1得到的逻辑值,直接与上一个单元格相加。
有同学可能会说:这里为什么要使用N(A1)呢?直接使用A1不可以吗?
因为A1的内容是文本“序号”,如果直接使用加法计算,会返回错误值。咱们加上一个N,就能把文本转换为0,而数值则会仍然返回原有的值。
怎么样?一样的序号有三种方法可以解决,你更喜欢哪一种呢?
老祝说:真正的高手,并不是一定要会使用很多很多的函数公式,而是能把简单的公式应用到极致,正所谓手中无刀,心中有刀。

转载请注明来源"ExcelHome"并保留原文链接。
固定链接:http://www.excelhome.net/lesson/animation/excel/1925.html
分享到:
Copyright 1999 - 2017 Excel Home.All Rights Reserved.
本站特聘法律顾问:徐怀玉律师 李志群律师   沪ICP备11019229号

沪公网安备 31011702000001号

征信