
见到这样一个问题,如何在多次记录中快速查询/标记首次出现的记录?
如下的表格里,1组、2组、3组分别都出现了很多次,那么如何定位首次出现的记录行呢?
既然是求“次”,直觉就是计数,应该用COUNTIF函数,C2单元格直接写公式=COUNTIF(B:B,B2),并下拉复制公式。如果直接使用,只能求出各组出现的总次数。
此路似乎不通,但还是可以努力下,改一下参数试试。C2的公式由COUNTIF(B:B,B2)改为COUNTIF(B$2:B$12,B2),结果是没有变化,但是能给我们启发,隐约想着把绝对引用改成相对引用也许有戏。
B$12改成B12没意义,一旦下拉填充,最后C12里就变成B22了。C2行想得到结果数字1,我们可以把B$12改成B2,即C2=COUNTIF(B$2:B2,B2),然后下拉填充看看。
这么一来,第一次出现的行就出来了。逐行来看,会发现参数变化的影响。
原理就是,利用绝对引用搭配相对引用,因为计数的范围上限仅到本行,而下限固定在第2行,后面出现再多次也不会被统计到,这样就会生成递增的序号。
到此,我们再修改一下公式,第1次出现的以★做标记,其他留空,就达成目标了。
C2=IF(COUNTIF(B$2:B2,B2)=1,"★","")