Agent Skills
返回列表
Excel 拆分大师

Excel 拆分大师

办公效率 更新于 2026.08.30

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

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f43c4493/wsd20260810

技能介绍

为什么需要它

处理 Excel 时经常遇到两类典型脏活:拿到一份几百 MB 的合并大表,需要按某个维度(地区、部门、客户)拆成多份分发给不同对接人;或者反过来,手头有一堆结构相同的零散表格,要按行拼接成一张总表。手工选中、复制、另存不仅重复,还容易漏行、错行,脚本化拆分合并是更可控的做法。

它做了什么

技能核心是一个 Python 脚本 scripts/excel_splitter.py,依赖 pandas 和 openpyxl,通过 -m/--mode 参数切换四种模式:

  • split_by_col:按指定列的唯一值拆分。每个唯一值生成一个 _<值>.xlsx,值来自该列的每个单元格。
  • split_sheets:把一个工作簿里的每个工作表导出为独立文件。
  • merge_files:把多个 .xlsx 文件按行拼接成一个工作簿,-f 支持通配符、目录或逗号分隔的文件列表。
  • merge_sheets:把同一工作簿内的多个 sheet 按行合并成一张表。

拆分列可以通过 -c 传列名或 0 起始的列索引,-s 指定工作表名或索引,--drop-split-column 可以在输出子表中去掉拆分列本身。合并模式下 -o 是输出文件路径,拆分模式下是输出目录。

边界与注意点

脚本对边界情况有明确处理:列值为空(NaN)的行会归入 未分类_空值.xlsx;文件名中的 Windows 非法字符(\ / : * ? " |)会被替换为下划线,首尾的点和空格会被去除,清洗后仍为空的名称回退为 未命名;如果两个不同的分组值清洗后文件名撞车,会追加 _1、_2 这样的数字后缀,不会互相覆盖。

另外,脚本只读原文件,所有产物写入独立目录,不会改动源数据。运行结束后会打印一份摘要,包括拆分列、输出目录、文件数、总行数和每个文件的行数,方便核对是否漏拆。

需要留意的是,该技能依赖 pandas 与 openpyxl,使用前需自行在 Python 3.10+ 环境中安装,脚本不会偷偷修改环境;依赖缺失时会直接报错并提示安装命令。

使用场景

  • 财务拿到含全国销售数据的工作簿,需按“地区”列拆分为每省一份,用于分发至各区域对接人
  • 运营收集多份结构相同的用户报名表,需按行合并成总表方便后续统计
  • 产品将多个 Sheet 的功能说明拆分为独立文件,用于分别上传至不同文档库
  • 行政有包含多部门的考勤表,需按“部门”列拆分并保留原表不变

适合人员

  • 财务专员,每月需将合并的销售数据按地区拆分为多份报表提交至各区域
  • 运营人员,常收集多份结构相同的表格需合并成总表用于统计
  • 产品文档负责人,需将包含多个 Sheet 的说明书拆分为独立文件上传至不同库
  • 行政人员,需将多部门考勤表按部门拆分并分发给各部门核对