Skip to main content

excel-diff

比对两份 Excel 表格的差异,按位置或按主键找出修改、新增、删除的行,可导出差异表。当用户提到对比 Excel、Excel 差异、两份表格有什么不同、核对表格时使用。

来源信息

仓库
CoderWanFeng/python-office
最近来源活动
2026年10月26日 05:52
检测到的 SKILL.md 语言
中文
星标
1,370
Forks
305

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

文件资源管理器
2 个文件

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
excel_diff
description
比对两份 Excel 表格的差异,按位置或按主键找出修改、新增、删除的行,可导出差异表。当用户提到对比 Excel、Excel 差异、两份表格有什么不同、核对表格时使用。
# excel_diff Skill > 比对两份 Excel,输出单元格级差异,可导出差异表 ## 功能描述 把两份 Excel 的同一张工作表做对比,返回每个变化的单元格、新增行、删除行和表头变化。 支持两种模式:按行号逐格比对(适合行顺序固定的表),或按主键配对后再比对 (适合行顺序会变、但每行有唯一编号的表)。 ## 所属分类 `skills/excel/excel_diff/` ## 调用方式 ```python from skills.excel import excel_diff excel_diff( before_path='上周报表.xlsx', after_path='本周报表.xlsx', key_column='订单号', ) ``` ## 参数说明 | 参数 | 类型 | 必填 | 默认值 | 说明 | |------|------|------|--------|------| | `before_path` | str | 是 | - | 变更前的 Excel 路径 | | `after_path` | str | 是 | - | 变更后的 Excel 路径 | | `sheet_name` | str | 否 | `None` | 工作表名,默认取第一个 | | `key_column` | str | 否 | `None` | 主键列名;指定后按主键配对行 | | `ignore_case` | bool | 否 | `False` | 文本比较是否忽略大小写 | | `output_path` | str | 否 | `None` | 差异表输出路径,指定后写出 .xlsx | ## 返回值 `dict`,包含 `mode`、`sheet`、`header`、`summary`、`changes`、`added_rows`、 `removed_rows`、`output_path` 八个键。`summary` 中的 `identical` 表示两份表是否完全一致。 ## 使用示例 ```python from skills.excel import excel_diff result = excel_diff('v1.xlsx', 'v2.xlsx', key_column='编号', output_path='差异.xlsx') print(result['summary']) for item in result['changes']: print(item['key'], item['column'], item['before'], '->', item['after']) ``` ## 原始函数 `contributors/my12yyds/excel_diff.py`
在 GitHub 查看