COUNTIF 函数能帮我们实现,它的作用是对特定条件计算。
那么,这个特定条件,我们可以用 If 逻辑判定函数来设定。
规则如下:
- 从张先生起,往下对所有名字从1开始报数。
- 如果下一个名字是新的,报数就递增,报2、3、4……
- 如果下一个名字是出现过的,就重报上一个数。
这个规则,我们使用 辅助列 来操作。
因为它可以被添加到 D列 旁边,对 D列 计算,还可以被隐藏,隐藏后计算照样生效。
这样,你就不需要改变原本表格模样了。
Step 1
- 在 D列 左侧新添加一列。该列第一行内容(即单元格 D1 )记得为空。
黄色框为新添加列
Step 2
- 在单元格 D2 输入公式:
=IF(COUNTIF($E$2:$E2,E2)=1,D1 1,D1)
操作展示
这条公式的意思是:
COUNTIF($E$2:$E2,E2)=1
将单元格 E2 的值(在这里是 张先生 ),对单元格 E2 匹配,看值是否唯一(张先生是否只出现了一次?)。
听起来很绕口,但下拉填充公式后,
比如到单元格 E3 时公式会变成:
COUNTIF($E$2:$E3,E3)=1
这样类推后,
就能对单元格 E3 、 E4 、 E5 ……匹配呐。
D1 1 - 是 IF 函数中的项。
如果上面条件成立(张先生只出现了一次),那么就报数 1。
现在 D1 为空,即零。
所以当 D2 遇到了张先生第一次,0 1,会从1开始报起。
D1 - 也是 IF 函数中的项。
如果上面条件不成立 (张先生出现了第二次),那么就报上一个数到的数。
Step 3
- 输入完公式后按 Enter 确认,再鼠标下拉填充公式。
操作演示
这时你看,如红框所示,当分别第二次遇到 张先生 和 李先生 ,
我可爱的公式,就自动自觉地重复报2。
直到遇到了 谭小姐 ,才开始报3,继续往下递增。