用AI处理Excel表格:清洗数据、生成公式和汇总报表
- 2026-11-07 17:47:08
月底拿到一张销售明细,先别急着求和。
同一个地区可能多了空格,单价看起来是数字,实际上却是文本;还有几行重复导入的订单。直接做报表,结果很可能从第一步就偏了。
这篇用一份小型订单表,演示如何让AI帮你制定清洗规则、生成公式,再用Excel完成计算和汇总。工具只需要Excel电脑端,以及你平时使用的AI对话工具;本文不依赖Excel内置AI功能。

图片1说明:先清洗明细,再生成并验证公式,最后汇总对账。封面表格为装饰示意,不参与本文计算;本文计算以订单样本为准。配图为AI生成的教学示意,并非软件界面截图。
一、先准备一份能核对的小样本
以下全部为虚构教学数据。假设每行代表一笔完整订单,订单号应当唯一,金额按“数量×单价”计算,不涉及折扣、税费或退款。
实际收到的原表可能有7条记录:上面的5条,加上一条重复导入的A001,以及一条单价缺失的A006。某些地区字段带首尾空格,某些单价以文本形式保存。
先复制原文件,保留一份不修改的“原始明细”。另外建立“清洗明细”“异常记录”和“汇总报表”工作表。
给AI看表头、字段含义和少量脱敏样本,就足够开始讨论规则。客户姓名、电话等与本次计算无关的内容不用提供。
二、让AI先列清洗规则,不要直接删数据
把下面的提示词连同样本发给AI:
我要清洗一份Excel订单明细。A列订单号,B列日期,C列地区,D列数量,E列单价,F列付款状态。一行是一笔完整订单,订单号应唯一。可能存在首尾空格、文本数字、重复导入、单价缺失。请先给出“问题类型/识别方式/处理建议/需要人工确认的事项”。不要直接删除记录,不要把缺失单价填成0。相同订单号但其他字段不同的记录,放入异常清单。请给出Excel电脑端可执行的操作或辅助列公式,并说明限制。样本:【粘贴表头和少量脱敏数据】
拿到建议后,按下面四项逐一处理。
1. 清理地区、付款状态中的多余空格
在原表右侧建立辅助列。例如在H2输入下面的公式,清理C2中的普通首尾空格,并向下填充:
=TRIM(C2)核对结果后,复制辅助列,选择性粘贴为“值”,再放入清洗明细对应字段。付款状态也用同样方法处理,将引用改成F2。
TRIM还会把词间连续的普通空格压缩成一个。它不适合无差别处理必须保留空格的编码,也不保证清除所有特殊空白字符。看起来相同但仍无法匹配的值,需要进一步检查字符来源。微软公式说明
2. 把文本数字转成真正的数值
选中数量、单价列,检查是否存在“数字以文本形式存储”的提示;有提示时,可使用“转换为数字”。也可以用辅助列测试单价:
=IF(TRIM(E2)=””,”待核对”,IFERROR(VALUE(TRIM(E2)),”待核对”))这个公式会把空白和无法转换的内容标成“待核对”。它适用于能被当前Excel区域设置识别的数字文本;包含单位、不同小数分隔符等内容时,要先确认格式。
**不要用IFERROR把所有错误都改成0。**单价未知和商品免费是两回事。订单号、电话号码等标识字段,也不能为了消除提示就转成数字,否则可能丢掉前导零。
3. 确认日期是日期值
在空白辅助列输入:
=ISNUMBER(B2)TRUE表示单元格里是数值,但仍要确认它确实代表预期日期,而不是任意数字。只有显示格式像日期,并不足以证明转换正确。
如果B列是文本日期,先在副本上选中该列,使用“数据→分列”,前面的分隔设置保持日期完整,最后一步选择“日期”并指定YMD,再检查转换结果。菜单名称可能因版本不同略有变化。
遇到“03/04/2026”这种来源不明的日期,先确认是3月4日还是4月3日,再决定转换顺序。
4. 重复先标记,缺失先隔离
在原始7条记录的辅助列输入下面的公式,检查订单号出现次数:
=COUNTIF($A$2:$A$8,A2)大于1表示订单号重复。对照整行核实后,确认重复导入的A001只保留一条;单价缺失的A006放入“异常记录”,等待补齐。
如果一张真实业务表中,一笔订单本来就有多行商品,那么订单号重复可能完全正常。此时应该先明确明细行的唯一标识,不能照搬本例规则。
本例清洗后的数量关系为:**原始7条-重复1条=6笔唯一订单;其中5笔可计算、1笔待核对。**异常记录暂不进入金额汇总,但必须在报表中说明。

图片2说明:空格、数字、日期、重复分别检查。图中为独立问题示例,不是某个公式的一键处理结果;姓名内部空格、带单位金额等需另定规则。保留原始表,缺失值与错误不要直接替换成零。
三、让AI生成公式,把列位置和规则说完整
把上文5条有效记录放入“清洗明细”的A1:F6。第一行是表头,第2至6行是数据。在G1添加“金额”。
与其只说“帮我算销售额”,不如把要求写成这样:
我使用Excel电脑端,请使用常见函数,不依赖动态数组。工作表名称:清洗明细。A列订单号,B列日期,C列地区,D列数量,E列单价,F列付款状态。第一行为表头,有效数据在第2至6行。请在G列计算金额,规则为数量×单价,不含折扣、税费和退款。数量或单价为空、非数字时,返回“待核对”;本例允许合法的0值。请给出G2公式、各部分含义和向下填充方法。校验样例:数量2、单价100,应得到200;单价空白时应得到“待核对”。
本例可在G2使用:
=IF(AND(ISNUMBER(D2),ISNUMBER(E2)),D2*E2,”待核对”)确认A001的金额为200后,将G2向下填充到G6。应得到:
正式套用之前,在测试单元格中分别试一试普通数值、空白、文本和0。这个公式只检查是否为数字,不负责判断负数、异常大额是否合理;这些业务限制要另行约定。
本文公式用英文函数名、英文逗号。如果Excel提示参数分隔符不正确,需要按本机设置改用分号。函数用途可对照微软Excel函数列表核查。

图片3说明:列位置、计算规则、软件版本和校验样例都写清楚,再验证AI给出的公式。图中650元为本例已付款金额。
四、按地区汇总已付款金额
在“汇总报表”建立三列:A列“地区”、B列“已付款笔数”、C列“已付款金额”。在A2:A4依次填入华东、华南、华北。
在B2输入:
=COUNTIFS('清洗明细'!$C$2:$C$6,A2,'清洗明细'!$F$2:$F$6,”已付款”)在C2输入:
=SUMIFS('清洗明细'!$G$2:$G$6,'清洗明细'!$C$2:$C$6,A2,'清洗明细'!$F$2:$F$6,”已付款”)将B2:C2向下填充到第4行。这里的美元符号固定明细范围,A2则会随着填充变成A3、A4,分别查找不同地区。
SUMIFS的第一个参数是求和范围,后面依次是条件范围和条件;各范围的大小应一致。微软SUMIFS说明
在第5行添加合计,B5输入=SUM(B2:B4),C5输入=SUM(C2:C4),结果应为:
这个结果仅包含5条有效明细中的已付款订单。A005未付款的80元不计入;缺失单价的A006仍在异常清单中。
本例公式使用固定的第2至6行。以后增加记录,要同步扩展引用范围;正式工作中也可以把清洗明细转换成Excel表,再使用结构化引用,减少遗漏新增行的风险。
五、需要交互汇总时,再做数据透视表
如果想按地区、付款状态来回切换查看,可以基于清洗后的5条有效记录制作数据透视表:
选中“清洗明细”的A1:G6,按Ctrl+T,确认“表包含标题”。 单击表内任意单元格,选择“插入→数据透视表”,放到新工作表。 将“地区”拖到“行”,“付款状态”拖到“筛选器”。 将“金额”拖到“值”,确认汇总方式是“求和”。 将“订单号”拖到“值”,设置为“计数”。 将付款状态筛选为“已付款”,对照上面的650元、4笔检查结果。
订单号计数在本例等于订单笔数,是因为每行一笔、订单号非空且已去重。商品明细表不能直接把行数当成订单数。
如果金额被默认设置成“计数”,先检查源数据中是否混入文本或异常值,再确认汇总方式。新增数据后,还需要刷新透视表;以Excel表为数据源时,新增表内记录可在刷新时纳入。微软数据透视表教程

图片4说明:本例已付款金额为400+150+100=650元,已付款4笔。图表使用虚构教学数据。
六、让AI写报表说明,但别让它猜原因
把经过核对的汇总结果发给AI,补上统计口径:
请根据以下已核对数据,写一段不超过150字的报表说明。范围:本次提供的2026年10月1日至5日订单样本,不代表整月销售。原始7条记录,去除重复导入1条,剩余6笔唯一订单。其中1笔单价缺失,暂不参与金额汇总;5笔有效订单金额共730元。有效订单中已付款4笔、650元,未付款1笔、80元。已付款金额:华东400元、华南150元、华北100元。请说明汇总结果和异常情况。不要推测业绩变化原因,不要编造同比、环比或客户行为。
可以整理为:
本次样本去除1条重复记录后,共6笔唯一订单。5笔有效订单金额合计730元,其中已付款4笔、650元,未付款1笔、80元。已付款金额中华东400元、华南150元、华北100元。另有1笔订单单价缺失,待补齐后更新报表。
交稿前,再核对三个等式:**7-1=6,5+1=6,650+80=730。**随后抽查几笔原始订单,确认数量、单价和付款状态都没有在清洗中改变。
第一次练习,用这5条有效数据就够了。等你能说明每个数字从哪里来,再把同样的步骤用到更大的表格中。