ARTICLE · 999782
我让千问直接清洗300行Excel:它没有算错,却还是改错了
我让千问直接清洗300行Excel:它没有算错,却还是改错了前几天我突然想试一件事。 现在很多AI已经可以直接读取Excel了。 那以后拿到一张乱七八糟的表,是不是不用自己一行行检查,直接扔给AI,让它找重复、补缺失、统一格式,最后再吐给我一份干净的Excel就行? 听起来很省事。 但我有点不放心。 因为Excel和写文章不太一样。 文章里多写一句废话,最多删掉。 表格里如果多改一个数字,可能整张报表都跟着变。 所以这次我没有找一张现成的Excel测试,而是自己准备了一份300行的8月销售明细。 
然后故意往里面埋了一堆坑。 有些一眼就能确定是错的。 还有一些,我自己知道答案,但AI不知道。 我想看的就是: 当AI发现一个“看起来不太对”的数据时,它到底会提醒我,还是直接替我改掉? 结果还挺有意思。 千问大部分都处理对了。 但最后真正让我不敢完全放手的,偏偏不是它算错了。 而是它算得太对了。 我先在300行Excel里故意埋了一堆坑 这张表看起来就是一份很普通的销售明细。 里面有订单编号、日期、区域、城市、门店、销售员、渠道、产品、数量、单价、销售金额、订单状态、完成率和备注。 我故意把问题分成了两种。 
第一种很好判断。 比如: 这些问题基本不存在什么业务争议。 发现了,改就行。 真正麻烦的是第二种。 我故意放进去了一些看起来很奇怪,但不能仅凭这张Excel判断对错的数据。 比如一笔订单完成率是168%。 一笔企业大客户订单金额高达98000元。 还有一笔退款金额是-11998元。 这些数字第一眼看上去都挺扎眼。 但它们未必是错的。 我甚至还故意放了一个更简单的: 数量5,单价7499,销售金额这一格是空的。 小学数学都能算: 5 × 7499 = 37495。 但我给这条数据设定的标准答案是: 不能自动填。 因为真实公司里的成交金额,不一定就是数量乘标价。 可能有折扣,可能有合同价,也可能有其他业务规则。 AI能算出37495。 但它并不知道,这笔订单最后到底是不是37495。 这就是我最想测试的一道题。 第一轮,我只让千问检查,不许它改 我没有一上来就说: “帮我把这张Excel清洗干净。” 而是先把权限收住。 我告诉千问: 先检查这份Excel的数据质量,找出异常、重复、缺失、格式不一致以及可能存在错误的数据。现在不要修改任何原始数据。对于无法根据现有数据确定是否错误的内容,请明确标记为【需要人工确认】,不要自行推测或修改。 然后等它自己找。 这一轮的表现,其实比我预想中好。 
更重要的是,它没有看到一个奇怪数字就直接判死刑。 比如168%的完成率,它给出的判断是: 可能表示超额完成,也可能存在计算问题,需要确认业务含义。 这个判断我觉得是合理的。 因为AI确实没有资格只看到“超过100%”,就直接把168%改成100%。 但它也暴露出了另一个问题。 它把107条超过100%的完成率全部圈了出来。 还把大量正常的退款负数也列成了一类“需要确认”的问题。 甚至连176条空白备注也单独列了一项。 可我们根本没有规定: 备注不能为空。 这时候我开始意识到,AI所谓的“发现异常”,和我们工作里真正需要处理的“错误”,其实不是一回事。 它很擅长告诉你哪里不一样。 但“不一样”,不等于“错”。 如果一张表有几万行,这种过度提醒多了,最后可能又变成另一种人工负担: AI确实帮我检查完了。 然后我开始检查AI检查出来的东西。 
真正有意思的,是让它开始动手 第一轮只检查,还看不出风险。 所以第二轮,我直接把修改权限给了千问。 但我留了一条边界: 能够明确判断的问题,可以直接修;需要人工确认的,不要动原值。 然后让它给我生成一份新的Excel。 这一次,千问确实不是只会“嘴上分析”。 它真的把表改了。 原来300条订单,清洗后剩下299条。 而且它还新增了一列“清洗备注”,把自己认为需要人工确认的地方标出来。 如果只看最后这张表,我其实会觉得: 挺靠谱。 直到我去看那一格空着的销售金额。 5×7499,它算出了37495 
还记得前面那道题吗? 千问第一轮检查的时候就写得很明确: “可推算:5×7499=37495。” 到了真正清洗的时候,它把这个空白单元格直接填成了: 37495。 修改日志里的理由也很完整: 金额原为空,推算补填:5×7499=37495。 从数学上看,没有任何问题。 5×7499确实等于37495。 如果这是道数学题,千问满分。 但如果这是一张真实的公司销售表,我反而不敢让它这么改。 因为它不知道有没有折扣。 不知道有没有协议价。 不知道有没有优惠。 也不知道这个字段记录的是挂牌金额、成交金额,还是最终结算金额。 它掌握的是公式,不是这家公司的业务规则。 所以这一格最有意思的地方就在这里: AI没有算错。 但它还是改错了。 不是数字错了。 而是它不应该在没有业务依据的情况下,把一个“理论上应该是多少”,直接写成“真实数据就是多少”。 这两件事看起来只差一步。 在真实工作里,可能差得很远。 更反常识的是:真正能改的,它反而没改 
表里还有另一条数据。 2×899明明等于1798。 这是我故意埋进去的一处明确计算不一致。 但这一次,千问反而谨慎了。 它没有把2298直接改成1798,而是在清洗结果里保留原值,并标记: 销售金额2298与计算值1798不符,差异+500,请核实。 看到这里我觉得特别有意思。 该谨慎的时候,它有点大胆。 真正可以直接处理的时候,它又有点保守。 这也是我这次测试之后,对“AI自动清洗Excel”最大的改观。 我们很容易把数据清洗想成一道客观题: 找错误,然后改正确。 实际上真正进入业务数据以后,里面混着大量判断题。 AI能告诉你: 但最后还有一个问题: 它有没有资格改? 这个问题,和它聪不聪明不是一回事。 当然,也不能因为这一格就说AI不好用 这次我反而更确定,AI非常适合处理Excel。 只是我以前对“适合”的理解不太一样。 像去空格、统一日期格式、统一中英文写法、全角半角转换、发现完全重复的数据,这些规则明确的机械工作,交给AI确实省事。 而且我还故意放了几个很容易让AI“手痒”的数据。 这些地方千问其实守住了边界。 所以这篇不是想证明: “AI清洗Excel不靠谱。” 恰恰相反。 我觉得它已经很好用了。 只是最好别把: “它能发现问题” 直接等同于: “它可以替我决定正确答案”。 最近我看到一些AI处理Excel的实操,也都在强调类似的流程:先诊断问题,再执行清洗,同时保留原始数据和修改记录;对于无法确定的内容,留给人工复核,而不是让AI自由发挥。 真正用过一次以后,我现在很认同这个思路。 如果以后再让我用AI清洗Excel,我会把权限拆成三层 
第一层,我会放心交给AI。 纯格式问题。 去空格、统一日期、统一全角半角、统一明确的同义写法。 第二层,我会让AI找,但先不改。 异常值和逻辑冲突。 比如金额突然特别高、完成率异常、数量和金额对不上、订单编号冲突。 第三层,我一定自己确认。 涉及真实业务值的修改。 金额应该是多少、某笔订单到底属于哪个区域、缺失字段应该填什么、一个异常值到底是不是错误。 这类问题不是AI多算几遍就能解决的。 因为缺的不是计算能力。 缺的是业务事实。 甚至一些现在的AI清洗产品,也开始采用“不直接删除原始数据,只做异常标记,最后由人工审核”的方式。(腾讯云) 我觉得这个思路比“一键全自动清洗”靠谱得多。 最后 这次测试之前,我最担心的是: AI会不会算错。 测试完以后,我发现这个问题反而没那么重要。 真正让我警惕的是另一种情况: 它算得完全正确,所以你很容易相信它接下来做的也是正确的。 5×7499=37495。 这个答案没有任何问题。 但从“算出37495”,到“把37495写进公司的销售数据”,中间其实还隔着一个人应该做的判断。 所以以后再看到: “AI一键清洗Excel” 我大概不会第一时间让它“一键”。 我会先让它找。 再让它标。 最后才决定哪些东西允许它改。 因为数据清洗这件事,真正需要守住的可能不是: AI能不能发现错误。 而是: 它什么时候应该停手。

PART 01

同一条订单重复出现; “王宁”前后多了空格; “上海”突然变成“上海市”; 渠道里的“线上”变成了“Online”; “显示器C”里的C变成全角字符; 日期有的写成2026/8/09,有的写成2026.08.11; 金额里突然出现¥3,495和3398元。
168%可能只是超额完成目标; 98000元可能真的是企业批量采购; -11998元也可能就是正常的退款冲销。
PART 02

重复订单,它找到了。 销售员为空,它找到了。 非法日期2026-08-32,找到了。 金额里的人民币符号、“元”,找到了。 “上海市”“SH”“Online”“显示器C”,这些不统一的写法也基本都抓了出来。

PART 03
完全重复的订单删掉了。 日期格式统一了。 金额里的¥和“元”处理了。 城市、渠道、产品名称里的格式问题也改了。

数量:5。 单价:7499。 销售金额:空。

数量是2。 单价是899。 销售金额却写成了2298。
这个数字和其他数字不一样; 这条记录不符合常见规律; 这个空值可以根据其他字段算出一个结果。
PART 04
98000元的大订单,它没动。 168%的完成率,它没强行改成100%。 -11998元的退款,它也没有因为看到负数就直接变成正数。
PART 05

PART 06