用 AI 处理 Excel:清洗、透视与图表自动化实践
真正的 Excel 自动化不是「让 AI 写公式」,而是把一条从取数到出图的链路做成可重复执行的工作流。下面是完整的字段规范、规则表与场景配方。
核心结论
- 先结构、后公式:把「一行一条记录、一层表头、无合并单元格」作为输入标准,自动化成功率提升最明显。
- 三段分离:取数(读源)、计算(清洗 + 汇总)、呈现(图表 + 导出)必须分开成节点,任何一段出错都能单独重跑。
- 把口径写成参数:时间范围、分组维度、筛选条件做成参数,口径变化时只改参数,不重搭流程。
- 数字必须由计算得到:语言模型只负责写解读与命名,任何数字都应来自单元格或计算节点。
- 留痕:输出文件附带「数据来源 + 口径 + 生成时间」工作表,是自动化能被信任的前提。
一、为什么大多数「AI + Excel」失败了
把 Excel 文件丢给 AI,让它「分析一下」,得到的往往是一段看似合理、实则无法追溯的文字。失败原因通常不是模型不够强,而是以下三个:
- 输入结构不规范:合并单元格、两层表头、小计行混在明细里,任何程序都无法稳定读取。
- 口径写在人的脑子里:「本月」是自然月还是账期?「华东」含不含安徽?这些不写清,结果必然反复。
- 把计算交给模型:模型擅长解释,不擅长精确运算。让它口算合计,等于埋了一个随机错误。
对应的解决思路很朴素:结构化输入、参数化口径、计算交给确定的工具。这三件事做好,AI 才真正能帮上忙。
二、输入表的 6 条规范
- 一行一条记录:不要在同一行里塞多个业务对象。
- 单层表头:第 1 行为字段名,不使用合并标题行;报表式表头放到另一个 sheet。
- 字段名唯一且无空格:如
order_id、order_date、region,避免出现「金额(元)」这类含符号的字段名。 - 一列一类型:日期列不混文本,金额列不混「约」字;空值留空,不用「-」「/」「无」等占位符。
- 不加小计行:小计由计算节点生成,不写在明细里。
- 有主键:每行有唯一标识(订单号、工号、单据编号),用于去重与回溯。
三、五段式流水线
| 阶段 | 输入 | 动作 | 输出 |
|---|---|---|---|
| 1 取数 | ERP 导出文件 / 数据库 / 接口 | 按时间范围与业务范围抽取 | 原始明细表 |
| 2 清洗 | 原始明细表 | 去重、补缺、类型转换、异常剔除 | 干净明细表 + 异常清单 |
| 3 计算 | 干净明细表 | 透视、同比环比、派生指标 | 汇总表 |
| 4 呈现 | 汇总表 | 图表、条件格式、结论页 | 成品工作簿 |
| 5 留痕 | 全过程 | 记录来源、口径、生成时间 | 说明工作表 |
分段的价值在于可重跑:数据源晚到时只重跑第 1–3 段,图表样式要改时只重跑第 4 段。把整条链路做成一整块,任何小改动都要全量重来。
四、清洗规则表(可直接照抄)
| 问题类型 | 判定规则 | 处理动作 |
|---|---|---|
| 重复记录 | 主键重复且关键字段一致 | 保留最新一条,其余记入异常清单 |
| 重复记录(冲突) | 主键重复但关键字段不一致 | 不自动合并,标记为待人工判断 |
| 金额异常 | 金额为负或超过历史 P99 的 5 倍 | 保留原值并打标记,不直接删除 |
| 日期异常 | 日期超出账期范围或格式无法解析 | 尝试按固定格式重解析,失败则打标记 |
| 维度缺失 | 区域 / 产品 / 客户等必填维度为空 | 按映射表补全,无法补全则单列统计 |
| 单位不一致 | 同一字段出现「元 / 万元」混用 | 统一换算为最小单位,并记录换算系数 |
这张表的关键设计是:只标记、不静默丢弃。自动化最容易失去信任的地方,就是它悄悄删掉了 3% 的数据而没人知道。
五、4 个典型场景配方
场景 1:月度销售报表
取数(ERP 销售明细)→ 清洗 → 按区域/产品透视 → 环比同比计算 → 生成柱状图与趋势图 → 导出 xlsx 并附说明页。配定时任务每月 1 日执行。
场景 2:对账与差异定位
两份表按主键左连接 → 找出仅一侧存在的记录 → 对金额不一致的行计算差额 → 输出差异清单 + 差异原因候选(按规则匹配)。这一步用智能体写「差异说明」比人工逐条看快得多。
场景 3:多文件合并
遍历文件夹内所有 xlsx → 校验表头一致性 → 追加合并 → 记录来源文件名到 source_file 列。合并类任务最容易出错的地方是表头不一致,务必先校验再合并。
场景 4:库存与预警
每日读取库存表 → 计算安全库存与周转天数 → 低于阈值生成预警清单 → 推送到企业微信 / 邮件。这类高频任务最适合定时任务,人工只需处理预警结果。
六、常见问题
AI 能直接操作我的 Excel 文件吗?
可以。桌面端智能体具备本地文件读写能力,能打开指定路径的 xlsx / csv,按规则清洗、透视、写公式、画图,再另存为新文件。建议把原始文件设为只读,输出统一落到新的文件名,避免误改。
和 Excel 自带的 Power Query 相比有什么不同?
Power Query 适合固定流程的重复刷新,稳定且快;智能体适合流程会变化、需要判断与自然语言描述的场景,例如「把异常值挑出来并说明原因」。两者可以组合:Power Query 做稳定清洗,智能体做判断与成文。
数据里有合并单元格和两层表头怎么办?
先把这类结构拆成「一行一条记录」的标准表,再交给自动化处理。合并单元格与多层表头是自动化失败的主要来源,建议在流程第一步就做结构归一。
数据量大跑不动怎么办?
十万行级别的处理建议交给数据库或 Python 运行时完成,Excel 只作为输入输出载体。DeepMetier 内置 Python 运行时,可在工作流中插入计算节点处理大数据量。
每次统计口径都会变,自动化还有意义吗?
有。把不变的部分(字段映射、清洗规则、输出结构)固化,把会变的部分(筛选条件、分组维度、时间范围)做成参数。每次只改参数,不用重搭流程。
最后更新:2026-08-12 | 作者:DeepMetier 团队