用 AI 在 Excel 核对 ZUGFeRD 发票与付款:重复、分次付款和余额
通过 GetSheetAI 真实开发演示,了解如何在 Excel 中按供应商与发票号核对 ZUGFeRD 发票和付款,合并分次付款、单列重复与超额付款,并用公式自动更新余额。
截图来自开发者本机真实操作,使用模拟数据,不是客户记录;保留原应用界面。短视频包含加速处理片段。
七个发票文件,不一定代表七张不同的发票。一张发票,也不一定只对应一笔付款。要在 Excel 中核对清楚,关键不是找到一个相同编号,而是按供应商和发票号匹配,汇总所有对应付款,再计算剩余金额。
这次 GetSheetAI 案例使用 ZUGFeRD 示例发票、模拟付款数据和真实 Excel 截图。录制来自带扩展发票导入能力的本地开发版本;该导入路径尚未部署到公开版本。下面的核对方法也适用于已经整理在 Excel 中的发票数据。
先看结果:六张发票,四种状态
七个文件整理成六张独立发票,结果写入 Rechnungsabgleich,原始付款保留在 Zahlungen。
| 检查项目 | 案例结果 |
|---|---|
| 重复文件 | 金额只计算一次,保留来源记录 |
| 不同供应商使用同一发票号 | 分开核对,不合并 |
| 正数未付余额合计 | 3453 欧元 |
| 超额付款 | 35 欧元,单独列出 |
| 没有对应发票的付款 | 42 欧元,保留为异常项 |
不要拿一家供应商的超额付款去抵另一家的未付款。两个问题应该分别显示,不能只留下一个看起来更整齐的净额。
准备发票表和付款表
发票表需要供应商、发票号、日期、到期日、应付金额、币种与来源。付款表需要付款编号、日期、收款方、发票号、付款金额与币种。发票号保留文本格式,避免丢掉前导零。
截图中,供应商 Lieferant GmbH 与 Handwerker GmbH 都有编号 471102。只用发票号匹配就会串单。实际业务优先使用稳定的供应商编号;不同名称需要建立映射,多币种数据还要将币种加入匹配条件。
给 GetSheetAI 的一句要求
新建一张发票付款核对表,按供应商和发票号匹配并合并分次付款,列出应付、已付、剩余金额和状态。重复文件只算一次但保留记录,超额付款和没有发票的付款单独列出,余额使用公式,不修改原表。
这里的三个关键点是:合并分次付款、单列异常、使用公式。只查到第一笔付款不够,把结果粘贴成固定数值也不能持续更新。
公式如何让结果联动?
已付金额可以用 SUMIFS 按多个条件汇总,剩余金额等于应付减去已付。本例中,200 与 140.96 欧元两笔付款合计结清 340.96 欧元发票;另一张应付 300、已付 120,剩余 180。应付 465、已付 500 的记录则为 −35,属于超额付款。
实测把付款 120 改为 300 后,该行余额从 180 变为 0,正数余额合计从 3453 变为 3273。其他发票及公式保持不变,测试后恢复原值。这样下一笔付款到来时,可以更新已有工作簿,不用再手工逐项对一遍。
使用时最重要的区别
完全相同的文件可以去重计数;同一编号却金额不同的记录应列为冲突,不能直接删除。多个分次付款适合汇总,而不是只用 XLOOKUP 取第一条。状态判断还应明确金额舍入容差。
本案例核对了六张发票与 48 个来源字段,不代表每种文件格式都已覆盖。已有 Excel 表格也可以使用这套流程,参见发票与付款核对案例及AI for Excel 入门。

