目前AI支持以下4种功能
1:万能网页版,无需api 直接网页提问,可自动执行VBA代码,支持收藏保存,方便多次利用
2:支持DS的api调用,内在funcation calling 直接操作你的excel,写函数,分析数据,出图,写vba窗体等等,均可胜任
3:公式助手,内置376个函数的使用方法,带示例,支持ai自动写公式,是你学习干活必备利器
4:支持运行python代码,需本地安装python环境,python的强大无需多说,习惯py的朋友,可直接运行你的代码,也可给ai提出需求自动生成,支持保存代码,方便多次利用!
2024 年微软正式上线 Python in Excel,一时间刷屏科技媒体。用 PY() 函数在单元格里写 Python,pandas 处理数据,matplotlib 画图——听起来很美。
但真正用起来,很多人发现它更像一个精心围起来的花园:能看,能摸,但走不远。需要 Microsoft 365 订阅、需要联网、代码在云端跑、不能装第三方库、不能读本地文件、不能离线使用[1][2]。
如果你用的是 Office 2019 或 2021,如果你的公司网络限制了外网访问,如果你需要用 openpyxl 读写本地文件,如果你不想把数据传到云端——微软的方案对你来说就是个摆设。
· · ·
01 / 现状微软原生 Python 的八道墙
微软的 Python in Excel 从 2023 年预览到 2024 年正式发布,技术实现很优雅——代码在 Azure 云端容器里执行,结果回传到单元格。但"云端执行"这四个字,恰恰是所有限制的源头[3]。
- 第一道墙:版本门槛。仅限 Microsoft 365 订阅用户,且需 Current Channel 版本 2408 以上。Office 2019、2021 用户彻底无缘。半年度企业通道(Semi-Annual Enterprise Channel)也不支持[1]。
- 第二道墙:必须联网。Python 代码在 Azure 云端容器执行,没有网络就完全无法运行。出差高铁上、飞机上、内网隔离环境——全部失效[3]。
- 第三道墙:不能装包。无法用 pip install 安装任何第三方库。只支持微软白名单里的库,requests、openpyxl、xlwings 等常用库被拒之门外[2][4]。
- 第四道墙:不能读写本地文件。云端容器与你的电脑完全隔离,不能读取本地 CSV、不能导出文件、不能操作本地文件系统[3]。
- 第五道墙:不能自动化。不支持事件触发器,不能写宏,不能像 VBA 那样响应按钮点击或单元格变化自动执行[2]。
- 第六道墙:不能实时更新。Excel 公式改了数据会自动重算,但 Python 代码不会。需要手动刷新,大数据量时等待时间长[2]。
- 第七道墙:用量限制。有每日和每月的使用配额,且配额不公开。重度使用时可能突然被限流,没有任何预警[5]。
- 第八道墙:数据出域。你的数据要上传到微软云端才能执行 Python。对于金融、医疗等对数据合规有要求的行业,这直接触碰红线[3]。
左:云端方案的各种限制;右:本地插件方案的自由度02 / 方案换一条路:本地 Python + AI 生成代码
与其在微软的围墙里种花,不如在围墙外开一块自己的地。我们做了一个 Excel 插件,把 Python 运行时搬到你自己的电脑上,再用 AI 帮你写代码。
核心逻辑只有一句话:你用自然语言描述需求,AI 生成 Python 代码,代码在你本地执行,结果直接写回 Excel。整个过程不需要联网(AI 生成代码时除外),不依赖 365 订阅,不碰云端。
四步完成:描述需求 → AI 生成代码 → 本地执行 → 结果写回 Excel它长这样:窗口左边是需求描述区和工作簿上下文,右边是带语法高亮和行号的代码编辑器。你在左边写一句"把三个 Sheet 的销售数据合并,按月份汇总",右边就出现一段完整的 Python 代码。检查无误后点执行,结果自动写入 Excel 新工作表。
03 / 对比八道墙,一道道拆掉
| | |
|---|
| | 2016 / 2019 / 2021 / 365 均可 |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
04 / 优势为什么本地方案更适合你
- 数据不出电脑。金融报表、客户信息、医疗数据——这些数据本就不该上传到云端。本地方案的所有计算都在你自己的机器上完成,Python 读取的是本地文件副本,原始文件不会被修改。对数据合规有要求的行业,这是硬性门槛。
- 任意版本可用。不管你用的是 Office 2016 还是 2021,不管公司 IT 部门是否批准了 365 升级,只要装了 Python 解释器就能跑。VSTO 插件兼容性好,不需要等微软的功能推送。
- pip 想装什么装什么。需要 requests 爬数据?需要 sqlalchemy 连数据库?需要 beautifulsoup4 解析 HTML?代码开头写一行
# PIP_INSTALL: requests,sqlalchemy,插件自动检测并安装缺失的包。微软白名单里没有的库,这里随便用。 - AI 帮你写代码。不需要学 pandas 语法,不需要记 openpyxl API。用大白话描述需求,AI 根据你的工作簿结构(Sheet 名、列头)生成对应的 Python 代码。看不懂没关系,看懂了可以改,改完可以存进代码库下次直接用。
- 真正的代码编辑器。VS Code Dark+ 配色方案,Python 关键词紫色、字符串橙色、注释绿色。带行号显示,报错时直接对照行号排查。不是塞在单元格公式里的代码片段,是完整的、可读的、可维护的脚本。
- 文件锁自动处理。Excel 打开文件时会锁定它,Python 直接读会报 PermissionError。插件每次执行前自动导出一份临时副本,Python 只读副本,执行完自动清理。你不需要手动关 Excel 再跑代码。
- 代码库可复用。AI 生成的代码可以一键保存到内置代码库,按名称搜索、随时加载。下次遇到类似需求,直接从库里调出来改改参数就行,不需要重新让 AI 生成。
05 / 实战三个典型场景
场景一:合并多表并汇总
三个部门的销售数据分别在三个 Sheet 里,想合并到一张表按月份统计。在微软方案里,你需要用 PY() 函数嵌套 xl() 引用,还得保证三个 Sheet 结构完全一致。本地方案里,你只需要写一句话:
需求描述
把"销售一部""销售二部""销售三部"三个 Sheet 的数据 合并到一起,按月份和部门汇总销售额
AI 生成的代码会自动用 pandas 读取、合并、groupby 聚合,最后把结果写成二维列表供插件写回 Excel。整个过程不超过 30 秒。
场景二:连接数据库取数
微软方案不能装 sqlalchemy,不能连数据库。本地方案里,你只需要告诉 AI "用 sqlalchemy 连接 MySQL 数据库,查询销售记录写入 Excel",插件会自动安装 sqlalchemy 和 pymysql,生成的代码直接连库取数。
场景三:离线环境批量处理
工厂内网、政府隔离网络、出差途中——这些场景微软方案完全失效。本地方案只要提前装好 Python 和需要的包,代码生成后可以反复执行,不需要任何网络连接。代码存在代码库里,随时调用。
07