Excel 如何从文本中提取金额并求和:2,400 条报销案例
用 GetSheetAI 从 Excel 报销备注中提取多笔金额,忽略 500ml 等规格数字,生成修改原文后自动更新的明细与合计。附真实截图、操作指令和公式适用范围。
截图来自开发者本机真实操作,使用模拟数据,不是客户记录;保留原应用界面。短视频包含加速处理片段。
A4 paper $32.50; 500ml hand soap $18.80 里有多个数字,但价格只有两笔,正确合计是 $51.30。从文本提取金额,关键不是“找到所有数字”,而是先说清楚哪些数字代表钱。
结果:2,400 条备注生成公式合计
这个案例使用开发者构造的 2,400 条模拟报销记录,不是客户数据。GetSheetAI 保留原编号和备注,新增 Amounts 和 Total 两列。截图来自真实 Excel 操作,工作簿为英文、菜单为中文。
| 实测项目 | 结果 |
|---|---|
| 行数覆盖 | 2,400 行合计全部符合案例预期 |
| 首行金额 | $32.50 + $18.80 = $51.30 |
| 排除规格 | A4、500ml 等数字不计入价格 |
| 修改原文 | $32.50 改为 $42.50 后,合计变为 $61.30 |
| 没有金额 | 留空,不把未知金额当作零 |
先定义原文格式
本例各商品用分号分隔,每项末尾有一个 $ 金额,小数点用英文句点。保留记录编号,方便结果与原文对应。如果有多种币种,应该分别汇总;退款、千位分隔符、小数逗号和金额后的附加文字,也应写进规则。
对 GetSheetAI 这样说
打开工作簿和插件,输入:
从每条报销备注里提取所有美元金额,新增金额明细和合计两列,用公式计算。忽略 500ml 这样的商品规格,没有金额的留空,修改备注后自动更新,保留原数据。
这类 AI for Excel 工作流的价值是省去逐行拆分、复制和改公式。录制中的实际结果使用 TEXTSPLIT 和 TEXTAFTER,没有使用 REGEXEXTRACT。
公式如何工作
以下是将录制中的表格引用改成 B2 单元格引用后的合计公式,适用于示例中的英文金额格式:
=IFERROR(SUM(--TEXTAFTER(TEXTSPLIT(B2,";"),"$")),"")
先按分号拆开商品,再取 $ 后的金额,转成数字后相加。500ml 位于美元符号前,因此不会进入合计。Microsoft 的 TEXTAFTER 文档列明了 Microsoft 365 和 Excel 2024 的支持范围。
这个公式针对固定格式,不是任意文本通用解析器。某项没有美元符号或金额格式错误时,最外层 IFERROR 也会返回空白。对于混合格式,可让插件另加状态列,区分“没有金额”和“格式待处理”。真正的 $0.00 应保留为零。
让结果跟着原文更新
保留 Excel 表格和公式,将合计设为货币格式,但不要转成文本。案例中首笔价格增加 $10 后,合计也从 $51.30 增至 $61.30。这个结果证明了本案例的公式联动,不代表所有输入格式都适用。
接下来可以参考数据清洗清单;若需要补充参考资料中的缺失值,参阅填补空白单元格。
常见问题
一个单元格有多笔金额可以求和吗?
可以。本例先按分号拆分,再提取每项美元金额求和。格式不一样时,需要调整规则。
必须自己写正则表达式吗?
不用。本次录制使用文本函数,由 GetSheetAI 根据自然语言指令生成公式。