修改Excel公式实现列全量对比时排除自身所在行检测会议冲突
适配所有Excel版本的通用修改方案
直接替换F8单元格的原有公式为以下内容即可:
=IF(COUNTIFS(C:C,C8,D:D,D8,E:E,E8)>1,"Clash","No Clash")
逻辑说明:
COUNTIFS会同时匹配C、D、E三列和当前行C8、D8、E8完全一致的所有行的数量- 自身行必然会被统计为1次,所以只要统计结果大于1,就说明存在其他行和当前行的三个字段完全重合,判定为冲突
- 自动排除自身行的匹配,不需要额外加排除条件
Excel 365/2021及以上版本优化方案
如果使用高版本Excel可以用更灵活的写法,支持后续新增行自动纳入校验:
=IF(SUMPRODUCT((C:C=C8)*(D:D=D8)*(E:E=E8)*(ROW(C:C)<>ROW()))>0,"Clash","No Clash")
性能优化建议
如果你的会议数据是固定区间(比如全部数据都在第2行到第200行之间),可以把整列引用C:C替换为固定区间$C$2:$C$200,减少不必要的计算,提升表格响应速度。公式直接下拉即可批量应用到其他行的Status列。
内容的提问来源于stack exchange,提问作者WorkerGuy21
相关产品推荐
相关产品推荐

