最近被其他部门的同事教导使用excel。突然觉得以前用代码切来切去的东西,和频繁比对的数据原来是用excel就能那么方便的算出,瞬间感觉打开了新世界的大门。
先说if和countif结合使用,来判断一段数据是否在另外一段数据里面的用法。比如我查到一批可能用问题的订单,然后手里面有拿到的日志,我要将大量日志适量取出之后将他们放在同一个表里面来比对,问题数据是否出现在日志中。最终来确定是不是我们出的问题,这里就进行一个数据包涵关系的用法。
这里提供两列数据,要找出同时存在于n列和o列的数据并且输出到p列。
这里只需要将焦点光标移动到p列并且在p列的第一行输入公式。
其实这里有个如果不常使用excel的人不太容易发现的地方。由于excel的拖拉可以支持公式自动生成,所以我们在写公式的多数情况下应该重点考虑目标点生成的数据的写法,而不是考虑所有的地方。我们只需要拖动然后将剩下的交给excel去处理即可。
使用公式
=IF(COUNTIF(N:N,O1)>0,O1,"")
这句话的意思从里到外进行分析,COUNTIF这里第一个参数是选择比对范围,这里的N:N指的是整个N列。第二个参数只输入了O1的意思是等于O1的,相当于=O1。
另外你还可以使用一些> >= < 等符号判断。这里COUNTIF的返回值是匹配到的数目。所以这里可以当作IF条件判断的入参。如果有符合条件的将返回具体数目,否则会返回0.IF的第二个参数分别是如果为真这第二个参数,假为第三个参数。这里我们写如果为真即返回O1的值,这样如果能查找到的就返回 没有查找到的就返回空。就达到了我们想要的过滤效果。