Excel专家Skill实战篇:我把一张慢了好几个月的表丢给 AI——它不只说哪里慢,还真给我测了一遍并写出最优解
- 2026-11-07 22:00:42
这两周我几乎全部精力都在这套 Excel 专家 Skill 上。写完了总得找个东西验一验,我挑了自己天天在用的运营底表。这张表的毛病我早就知道,忍了好几个月:慢,慢到我改成手动计算,慢到每次按保存都要卡五秒。它接手之后,不只告诉我哪里慢,还一列一列量给我看。就是这一下,让我觉得它是真专家,不是嘴上说说。
一、这张表,我忍了好几个月
「微信发送 SKILL 清单」,我自己运营公众号和社群用的底表。6 MB,20 张表,18 万格公式。
它管的事很杂:谁申请过哪套 Skill、打赏多少、留言点赞多少、这一轮通知发了没有、这个人是大号还是小号。我每天往里加数据,筛选、排序、看结果,也全在这张表里完成。
慢这件事,我忍了很久。后来干脆把计算模式改成手动——这样复制粘贴、排序筛选,它就不自作主张地算了。
但躲不掉两件事:一是总得记得按 F9,忘了按看到的就是旧数,这比慢更麻烦;二是点保存会卡五秒。五秒不长,可你一天保存十次,而且它偏偏卡在你最想收工的那一刻。
其中有一列,是我后来自己加上去的:把每个人申请过的 Skill 类型拼成一串,就想给自己一个感知——这个用户到底用得怎么样。加的时候我就知道,在原始表里做这种统计,性能不会好。
但没想到差到那种程度。 那一列单独重算,要 7.15 秒。
我一直觉得「几千条数据而已,能慢到哪去」。事实是我对「慢」的理解,一直停在感觉层面,从没量过。
二、它没有直接动手,先测了一遍
我把表交给它,第一件事不是改,是让它先体检。
这一步我特意没给提示,就想看看它会不会上来就动手。结果是:先跑结构画像,再跑规范体检,出了 87 个问题、18 个 P0。
然后它做了件让我意外的事——把每一列单独置脏、单独计时。
COUNTIF([昵称],[@昵称]) | ||
COUNTIF([微信号最终],[@微信号最终]) | ||
TEXTJOIN(",",TRUE,UNIQUE(FILTER(...))) | ||
COUNTIFS(...) |
这就是我最惊喜的地方。
我一直知道 COUNTIF、SUMIF 这类函数低效,也知道 Office 365 函数能救,但「低效到什么程度」「哪一列最该先动」,从来没量过。
它不只告诉我哪条函数不合理,还真跑了一遍给我看。
有理有据,不用我信它。
两种慢,说白了就一句话:一种是每一行都去把整张表数一遍,另一种是每一行都做一次全表筛选。4,476 行里其实只有 1,158 个微信号,同一件事被重复算了四遍。
三、改法一句话:算一次,查很多次
思路很简单:先把结果算成一张小表,再让每一行去查这张小表。
新建一张聚合表,用 GROUPBY 把 4,476 行按微信号归成 1,142 组,一次算出全部指标;原来的公式列,全部换成一条 XLOOKUP,去查这张小表。
列还在原地、值还在原地,我看表的习惯一点没变——这点我特意要求过,它守住了。没有把数据挪到别处让我另找地方看。
有朋友会问,为什么不用透视表、不用 Power Query?我当时的判断是:透视表的结果在报表区,我要的是「这一行上就写着这个人的数字」,还得再捞一次;Power Query 更快,但它把数据搬走了,改一格不能立刻见结果。我这套表是一边看一边改一边群发的,要的是即时。
改完之后,同一个方法再测:
| 0.169 秒 | ||
| 0.032 秒 | ||
| 0.054 秒 | ||
| 9.76 秒 |
还有那个最实际的指标:点保存,从卡五秒变成基本即时。
我特意没改任何一行 VBA,那些宏一个字没动。但原来那些不敢碰的地方,自己就松开了。





四、这个效果,换个 AI 做不到
写到这儿,我知道有人会问:这些事,换个 AI 做不了吗?
我的判断是:很难。不是它们不聪明,是路线不一样。
市面上大部分「AI 操作 Office」的方案,走的是两条路。
一条是直接读写文件里的 XML(OpenXML 那套)。这条路轻,服务器上就能跑,不用装 Office。但它有两个绕不过去的坎:一是不经过 Excel 的计算引擎,公式算不了、也测不了——你要它「量一下这列公式多慢」,它根本无从下手;二是回写容易丢特性,透视表、切片器、图表、VBA、智能表,这些在文件层面表达不完整,改一次就少一批。
另一条是在线表格。对象模型是轻量的,读单元格、写单元格还行,但透视、宏、Power Query 这些,它撑不起来。
说白了,它们处理的是「表格文件」,我这次要动的,是「一个活着的 Excel」——公式在算、透视在联、宏在跑。
还有更极端的做法:让别的程序去开我这个 .xlsm。我这个簿里有 16 个智能表、3 张透视、25 个 VBA 模块、13 个 Power Query 连接,随便一个通用解析器碰一下,都可能把它拆散。所以我从不把这类文件交给「什么都能打开」的工具。
我用的这套不一样:它直接附着到正在运行的 Excel 上,用同一套对象模型、同一个计算引擎。它能读到你屏幕上的选区,能真的触发一次重算然后掐表——这才叫「测性能」,不是「猜性能」。
大厂做的多是通用方案。要覆盖 Word、Excel、PPT,还要覆盖网页版,不可能为一个「18 万格公式的运营表」抠到这种程度。这不是能力问题,是取舍问题。
所以我不太担心被追上。这是拿它天天干活的人做出来的,不是拿它开发布会的人做出来的。
五、顺带发现的两件事
第一,我那列数据一直是错的。
改完它没有直接收工,而是拿改造前的快照逐格对拍。数据源八列、微信号信息两列全部零差异,只有一列差 25 行。
查出来的原因是:COUNTIF 会把 * 和 ? 当通配符。我表里有 22 个昵称带这两个字符——「梦」「诗」这种。拿「梦」去数,它匹配的不是这个名字,是所有以「梦」开头的昵称。
第 69 行「梦*」,旧值 11,真实只有 1。
我用了这么久,一直没发现。
提速只是让表跑得快一点;这 25 行是告诉我:你有一列数据一直是错的,而且错了很久,你自己不知道。这件事对我的触动,比提速本身大。
第二,它给自己打了个 0 分。
体检总分 0 分、成熟度 L0,当时我也愣了一下。
后来翻它的打分代码才发现,这分数是按问题条数硬扣的,扣到 0 就停——问题一多必然是 0,跟表规不规范其实没关系。更冤的是「同构公式」那一条,把智能表的计算列当成了毛病,一扣就是 72 分。而我这些列,本来就是智能表的计算列。
这条已经记进迭代清单,排第一。一个误导人的信号,比没有信号更糟。
六、它自带反馈机制
这套 Skill 有一点我挺满意:它会主动找你要反馈。
不是我改完表格自己去整理问题、写复盘。是它在收尾的时候会问:
- 这次踩的坑、摸出来的经验,要不要落成一份 Markdown?
- 要不要把这次的成果整理成一份可分享的文件?
你点个头,它自己整理。你不需要动手写一个字。
而且分享出去的那份,它会自动做脱敏——真实微信号、昵称、金额这些都会处理掉,只留结构和结论。我不担心把客户数据带出去。
这件小事,其实是我最看重的一环。
我这几十套 Skill 能一直迭代下去,靠的不是我天天写代码,是每次用完都能留下一点东西。这次多知道了某个函数的参数语义跟文档写的不一样,下次多知道了某个操作会把表挪到别的工作簿去——这些都不是我事先想到的,是一次次用出来、一次次记下来的。
攒够十条,就是一次升级。攒够一百条,它就跟刚写出来的时候完全不是同一个东西了。
所以这个「用完就沉淀」的闭环,比某个具体功能重要得多。它决定了这东西是「一次性工具」,还是「越用越好用的伙伴」。
七、写在最后
这套东西我还会继续迭代。这次验出来两个明显短板:体检那三分钟太慢、全程没个进度提示,等得有点抓狂;打分机制也得改。
但更想说的是另一件事——
用得越多,它才会越准。
同一套 Skill,在甲手里是「能读写表格」,在乙手里能改掉一张跑了好几个月的慢表。差别不在 Skill,在用的人愿不愿意把「哪里不好用」「哪里算错了」「哪里没想到」说出来。
我做了 45 套 Skill,最怕的从来不是功能不够多,是「看起来很厉害,真用起来不行」。这次拿自己天天在用的表去撞,撞出来的结果比我预期好——不是因为它多聪明,是因为它肯一步一步测、肯在我猜错的时候拿出反例、肯在该停手的时候停手。
工具的价值,从来不在它答应你多少,在它兑现了多少。
好的反馈我收着,坏的反馈我更想收。你踩过的坑,别人就不用再踩一次。
叫上身边的人,一起来把 AI 编程玩转。
用的时候遇到问题、有想法,都可以直接跟它说。它会记下来,也会帮你把经验整理成文档——你只管用,剩下的交给它。
想体验全套免费 Skill?欢迎加好友进入免费社群,关注公众号,后台回复「Skill」,不要理会AI自动回复,等我发联系方式,加好友进群自助获取。
公众号:Excel催化剂 | 微信:190262897 | 承接数据咨询解决方案、软件功能定制、AI编程培训服务等