Agent Skills
返回列表
Excel表格去重

Excel表格去重

办公效率 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_8f803df1/excel-deduplicate 到您的 AI 助手中。

技能介绍

问题

在 Excel 工作表里定位重复行并删除时,常见方案容易踩坑:普通 API 删除行可能触发整表重算或重写,保留格式较难,大规模工作表会变慢,误删后也难恢复。当目标是按关键列去重,同时保留单元格样式、公式关系和共享字符串时,需要更可控的底层处理。

工作方式

这个技能把流程拆成两个可控阶段:先由 excel-find-duplicates 做只读查重,定位关键列中需要保留或移除的行;确认范围后再进入删除阶段。删除不是走 openpyxl.delete_rows(),而是直接内嵌 XML 操作,移除目标行对应的 <row> 元素。该逻辑与 excel-delete 的行删除模式共用同一套实现;因此去重后如果还要额外删行,可再单独调用 excel-delete。

注意点

  • 格式无损:只移除行级 XML 元素,不修改 styles.xml、sharedStrings.xml,减少样式与共享字符串被打乱的风险。
  • 性能:官方说明 XML 方案比 openpyxl.delete_rows() 快 10 倍以上。
  • 备份先行:遵循 excel-safe-workflow 第零步,操作前自动备份并使用时间戳命名;成功后保留最新 3 份,发现损坏立即删除坏文件并从备份恢复。
  • 空值处理:关键列为 None 的多行只保留第一行。
  • 依赖:需要一次性准备好 lxml 解析库。

使用场景

  • 销售订单表存在相同客户与产品的重复记录,需按关键字段去重并保留原有样式
  • 多部门上报的月度报表合并后存在重复条目,需清理冗余行且不破坏公式格式
  • 大型数据表包含数千行重复数据,需要快速去重同时保持共享字符串完整
  • 处理包含合并单元格的复杂报表,去重时需保留跨行合并的格式结构

适合人员

  • 数据分析师:需要快速清理重复数据并保留原始表格格式用于后续分析
  • 运营人员:处理多渠道汇总的订单表格,需要删除重复条目并保持格式一致
  • 财务人员:合并多个部门的报销记录后需去重,同时保留金额格式和审批流程
  • 表格开发者:需要直接操作XML底层结构实现高性能去重解决方案