Skip to content

第38课 · AI 操作 Excel:三种方案选对不踩坑

本节要点

  • AI 本身只是大脑,要操作 Excel 必须给它装「手」
  • Python 两大库:Pandas(读数据)+ OpenPyXL(读写公式),但可能改坏格式
  • 原生方案 Xlwings:Mac/Windows 通用,格式不会乱
  • Win32com:仅 Windows,直接调系统接口
  • 两个现成 Skill:Anthropic 官方 XLSX Skill(131K+ 下载)、Excel Automation Skill
  • 用 find-skills 一句话搜索安装,让 AI 帮你选最合适的

1. 为什么 AI 操作 Excel 会出问题

很多同学已经试过让 AI 帮忙处理 Excel——合并表格、写公式、整理数据。但刚开始用的时候,经常会遇到两个让人头疼的问题:

问题一:AI 没法直接读 Excel

你把一个 .xlsx 文件丢给它,它可能直接说「我看不了」,或者要现场写一段 Python 代码来读。而写代码的过程中,它又要去安装各种环境依赖(pandas、openpyxl……),第一次跑起来特别慢。

问题二:格式被改坏了

好不容易跑通了,结果一打开文件发现:字体变了、颜色没了、合并单元格散开了、公式变成数值了……原本精心排版的报表,被 AI 按照自己的理解重新生成了一遍。

💡 这两个问题不是 bug,而是必然现象。理解了原因,才知道怎么选对方案。


2. 核心认知:AI 只是个大脑

先建立一个关键认知:

AI 本身只是一个大脑,它不具备操作 Excel(或任何文件)的能力。

你让它读 Excel,它不会真的「打开」Excel 软件。它做的事情是:调用某个工具(Python 库、Skill、系统接口),让工具去读写文件,再把结果反馈给你。

工具决定了结果质量。用对工具,又快又准;用错工具,格式全乱。

目前 AI 操作 Excel 的工具,分三大类:

方案原理格式安全适用场景
Pandas / OpenPyXL直接读写 XML 文件⚠️ 可能改坏读数据、写数据、标准化二维表
Xlwings调用 Excel 软件原生接口✅ 安全格式复杂、要保留样式的报表
Win32com调用 Windows 系统 COM 接口✅ 安全Windows 专用的重度自动化

下面逐个讲清楚。


3. 方案一:Pandas + OpenPyXL(最常用)

这两个是 Python 操作 Excel 最经典的库,AI 默认就会用它们。

3.1 Pandas:读数据之王

Pandas 适合读取标准化的二维表——就是那种规规矩矩、第一行是表头、下面都是数据、没有合并单元格也没有花式排版的表格。

典型场景:

  • 读取大型 CSV / Excel 文件做数据分析
  • 合并多张表(本课程第 2 课的 Excel 合并工具就是用它)
  • 筛选、汇总、透视
python
import pandas as pd

# 读 Excel
df = pd.read_excel("销售明细.xlsx")
# 按客户汇总
result = df.groupby("客户")["金额"].sum()

💡 Pandas 把 Excel 当成「数据」来处理,不在乎格式。它关心的是数据本身,不是表格长什么样。

3.2 OpenPyXL:读写公式都能搞定

OpenPyXL 功能更全,Excel 大部分能力它都有:

  • 读取 / 写入 Excel 文件
  • 写公式(SUM、VLOOKUP 等)
  • 操作单元格、行、列
  • 设置样式

而且它的工作方式很聪明——它不是打开 Excel 软件去操作,而是直接解析 Excel 文件内部的 XML 结构,相当于绕过软件直接改文件内容,效率非常高。

python
from openpyxl import load_workbook

wb = load_workbook("底稿.xlsx")
ws = wb["Sheet1"]
ws["A1"] = "你好"
wb.save("底稿_新.xlsx")

3.3 共同的坑:格式可能被改坏

这两个库都有一个共同的问题:它们是按照自己的理解来重建文件的

举个例子,你的底稿里有一行是合并单元格、字体是微软雅黑、底色是浅蓝。AI 用 OpenPyXL 读取后重新生成,这些样式信息很可能就丢了——因为 OpenPyXL 在读取和保存之间,并不会 100% 保留所有格式细节。

如果你遇到了这个问题,往下看方案二。


4. 方案二:Xlwings(格式安全,跨平台)

如果你被「格式被改坏」这件事折磨过,强烈推荐用 Xlwings

4.1 为什么 Xlwings 不会改坏格式

Xlwings 的原理和前两个完全不同:

  • Pandas / OpenPyXL:直接改文件(像拿笔在纸上写字,可能写歪)
  • Xlwings:让 Excel 软件自己来改(像让写字好看的人帮你写)

Xlwings 底层调用的是 Excel 软件的原生接口。也就是说,它相当于「远程操控」你的 Excel 软件,让 Excel 自己去做修改。既然是 Excel 自己干的,格式当然不会乱。

4.2 跨平台优势

系统XlwingsWin32com
Windows✅ 支持✅ 支持
Mac✅ 支持❌ 不支持

Xlwings 在 Mac 和 Windows 上都能用,这一点非常重要——如果你是 Mac 用户,Win32com 根本用不了,Xlwings 是你唯一的原生方案。

4.3 怎么让 AI 用 Xlwings

不需要安装什么特别的东西,直接在对话里告诉它:

帮我操作这个 Excel 文件,用 Xlwings 库,不要用 pandas 或 openpyxl,因为我要保留原有格式。

或者:

请用 Xlwings 打开这个 Excel,在 Sheet1 的 A1 单元格写入"审计完成",保存后关闭。

AI 看到「Xlwings」这个关键词,就会自动用它来写代码。


5. 方案三:Win32com(Windows 专用)

Win32com(全称 win32com.client)是 Windows 系统底层的 COM 接口,可以调用所有支持 COM 的 Office 软件。

它的特点和 Xlwings 类似——都是调用 Excel 原生接口,格式安全。区别是:

  • 只在 Windows 上有效,Mac 用不了
  • 功能更底层、更强大,但写起来也更啰嗦
  • 适合重度自动化场景(批量打开几十个 Excel 做复杂操作)
python
import win32com.client as win32

excel = win32.Dispatch("Excel.Application")
excel.Visible = False
wb = excel.Workbooks.Open(r"C:\底稿.xlsx")
ws = wb.Sheets("Sheet1")
ws.Range("A1").Value = "审计完成"
wb.Save()
wb.Close()
excel.Quit()

💡 如果你是 Windows 用户,遇到复杂需求时可以跟 AI 说「用 win32com」,它会自动走这条路。


6. 两个现成的 Excel Skill

除了让 AI 临时写代码,更省心的方式是安装现成的 Excel Skill。Skill 把常用操作封装好了,AI 调用起来更稳定。

6.1 Anthropic 官方 XLSX Skill(推荐首选)

这是 Anthropic(Claude 的母公司)官方出品的 Skill,目前下载量 131K+,是最热门的 Excel Skill。

  • 底层用:Pandas + OpenPyXL
  • 适用:常规的数据读写、公式操作
  • 优点:官方维护,质量有保障,下载量大说明经过大量用户验证
  • 缺点:因为是 Pandas + OpenPyXL,格式问题依然可能存在

6.2 Excel Automation Skill

另一个值得尝试的 Skill,特点是用 Xlwings 操作。

  • 底层用:Xlwings
  • 适用:对格式要求高的场景
  • 优点:格式安全,Mac / Windows 都能用
  • 缺点:下载量没有官方那个高,社区验证相对少一些

💡 两个都装上,对比着用。简单的数据处理用官方 XLSX Skill,遇到要保留格式的场景切到 Excel Automation Skill。


7. 怎么安装这两个 Skill

安装方式和第 9 课学过的 find-skills 完全一样。

7.1 用 find-skills 搜索

在 OpenCode / Claude Code 里说:

用 find-skills 帮我查找 Anthropic 官方的 xlsx Skill。

或者:

用 find-skills 搜索 Excel Automation Skill,就是用 Xlwings 操作 Excel 的那个。

AI 会调用 find-skills 在各个社区搜索,找到后告诉你下载量、评分、功能描述。

7.2 让 AI 帮你安装

找到之后直接说:

帮我安装这个 Skill。

AI 会自动执行安装命令,装完重启就能用了。

7.3 让 AI 帮你选

如果你不确定用哪个,可以把需求说清楚,让 AI 帮你判断:

我想让 AI 帮我处理审计底稿,底稿格式很复杂(合并单元格、公式、条件格式都有),请问应该用哪个 Excel Skill?帮我对比一下功能、底层库、下载量。

AI 会把每个 Skill 的详细信息罗列出来:

  • 功能是什么
  • 调用的 Python 底层库是哪个
  • 热门程度 / 使用量怎么样

通过这些信息,你就能判断该用哪个了。


8. 三种方案怎么选

你的情况推荐方案
读数据、合并、汇总,不在乎格式Pandas / OpenPyXL(官方 XLSX Skill)
底稿格式复杂,不能乱Xlwings(Excel Automation Skill)
Windows 用户,要重度批量自动化Win32com
Mac 用户,要保留格式Xlwings(唯一选择)
不知道选哪个两个 Skill 都装上,对比着用

💡 课程将来可能有更好的方案。本节课推荐的是截止目前的最佳选择,AI 生态发展很快,将来会有更强大的 Excel Skill 出现。养成用 find-skills 搜索最新方案的习惯,永远不会过时。


⚠️ 常见问题

AI 操作 Excel 时报错「ModuleNotFoundError: No module named 'openpyxl'」

这是 Python 环境里没装对应的库。直接告诉 AI:

运行报错说缺少 openpyxl,帮我安装一下。

它会用 pip install openpyxl 帮你装好。Pandas、Xlwings、win32com 同理。

格式真的被改坏了怎么办?

立刻切换到 Xlwings 方案。跟 AI 说:

之前用 openpyxl 把我的格式改坏了,请改用 Xlwings 重新处理,这次要保留所有原有格式。

Mac 能用 Win32com 吗?

不能。Win32com 是 Windows 专用的 COM 接口,Mac 上只能用 Xlwings。

两个 Skill 都装了会冲突吗?

不会。Skill 之间互不干扰,AI 会根据你的需求自动选择调用哪个。你可以在对话里指定「这次用 XX Skill」来明确切换。

Excel 文件很大(几十 MB),AI 处理很慢怎么办?

  • 用 Pandas 读数据比 OpenPyXL 快很多
  • 如果只需要读、不需要改格式,优先 Pandas
  • 如果必须保留格式且文件巨大,Xlwings 是最稳的(虽然慢一点,但不会出错)

关键收获

TIP

AI 操作 Excel,核心是选对工具

  1. 不在乎格式 → Pandas / OpenPyXL(或官方 XLSX Skill),快、稳、热门
  2. 必须保格式 → Xlwings(或 Excel Automation Skill),Mac/Windows 通用
  3. Windows 重度自动化 → Win32com,最强但仅限 Windows

安装现成 Skill 比临时写代码更省心——用 find-skills 一句话搜索,让 AI 帮你选、帮你装。两个 Skill 都装上对比着用,是新手最稳妥的起步方式。


下一步

学会了 AI 操作 Excel 之后,可以把它接进你的工作流:

  • 多个 Excel 合并汇总 → 自动生成报告(回顾第 2 课)
  • 审计底稿批量处理 → 保留格式不破坏(用 Xlwings)
  • 财务数据清洗分析 → 用 Pandas 一键搞定

这些场景里,Excel 操作都是整个工作流的「一环」——配合前面学过的 Skill(语音转文字、Word 生成、PDF 提取),你可以搭出完整的自动化链路。


参考链接

© 2025 逆行的狗