基于优先级的Excel重复项批量删除方法咨询
Excel 按规则批量删除重复项方案
可以一次性完成这个操作,以下是两种实用方案:
核心规则回顾
- 以「联系信息」列为依据识别重复项
- 参照「处置状态」优先级保留高优先级条目,移除低优先级重复项
- 处置状态相同时,保留「日期」较晚的记录
方法一:Power Query(推荐,全自动一次性完成)
Power Query能可视化实现所有规则,无需手动重复操作:
- 选中数据区域(含表头),点击「数据」→「从表格/区域」,确认「我的表格有标题」,进入编辑器
- 添加优先级得分辅助列:
点击「添加列」→「自定义列」,输入匹配你实际优先级的公式(示例中优先级从高到低为Offer Accepted > Interview Scheduled > Declined Offer):= switch [处置状态], "Offer Accepted", 3, "Interview Scheduled", 2, "Declined Offer", 1, 0 // 其他状态设为最低优先级 - 排序+去重:
- 先按「优先级得分」降序排序,再按「日期」降序排序
- 点击「转换」→「移除重复项」,仅勾选「联系信息」,确定
- 删除「优先级得分」列,点击「关闭并上载」,直接得到处理后的结果
方法二:辅助列+筛选删除(快速手动操作)
适合不想用Power Query的场景:
- 添加「优先级得分」列(比如D列),用
VLOOKUP匹配优先级数值(数值越大优先级越高):
(B列为「处置状态」列,根据你的实际列调整)=VLOOKUP(B2,{"Offer Accepted",3;"Interview Scheduled",2;"Declined Offer",1},2,FALSE) - 添加「保留标记」列(比如E列),用公式标记符合保留规则的行:
(A列为「联系信息」,C列为「日期」,公式判定当前行是同组内优先级最高且日期最晚的记录)=AND(D2=MAXIFS(D:D,A:A,A2),C2=MAXIFS(C:C,A:A,A2,D:D,D2)) - 筛选「保留标记」为
FALSE的行,批量删除即可
内容的提问来源于stack exchange,提问作者Asim
相关产品推荐
相关产品推荐

