Excel嵌套IF语句未返回当前日期问题排查求助
问题原因分析
公式逻辑拆解
你的公式=IF(ISNUMBER(SEARCH("Terminate",E2)),C2,IF(COUNTIF(B:B,B2)>1,C3-1,TODAY()))执行逻辑如下:
- 若E2包含"Terminate"(离职),返回C2的值;
- 否则,检查B列中与B2相同的值出现次数是否大于1:
- 是 → 返回下一行C列值减1(C3-1);
- 否 → 返回当前日期(TODAY())。
第2行未返回当前日期的直接原因
第2行触发了COUNTIF(B:B,B2)>1的条件——也就是说,B2对应的员工标识(比如员工ID)在整个B列中出现了不止1次,公式因此执行了C3-1的分支,而非TODAY()。
比如如果该员工有入职、调岗等多条记录,B列会重复出现同一个员工ID,COUNTIF统计到的次数就会大于1,公式就不会走到返回当前日期的步骤。
验证方法
你可以在任意空白单元格输入=COUNTIF(B:B,B2),如果结果大于1,就完全验证了这个原因。
内容的提问来源于stack exchange,提问作者nick lanta
相关产品推荐
相关产品推荐

