← 返回应用场景

多表合并示例:六行订单怎样分成可用、重复和冲突

合并结果不能只给出一张总表。本例使用六行订单,演示完全重复、同号数量冲突和空值的不同去向,让输入行数、可用结果及待核对清单可以逐条对上。

通用场景示例,非真实客户案例。文中数据用于说明方法,不代表已交付结果。

直接结论:每条输入都要有去向;完全重复可去重,同号不同值应隔离核对,不能悄悄取最后一条。

适用读者:需要把不同人员提交的订单明细合成一张表,并保留来源和差异的团队。

先准备能说明问题的六行输入

本例两份表都按“一行一条订单商品明细”提交,以门店编号、订单号、明细号组成唯一键,数量单位都是件。为简化展示,表中明细号均为01。订单号按文本保存,避免把0001改成1。

六行输入及其最终去向
来源行唯一键数量处理结果
甲表第2行S01 / 0001 / 012可用,保留
甲表第3行S01 / 0002 / 011可用,保留
甲表第4行S01 / 0003 / 013与乙表冲突,待核对
乙表第2行S01 / 0001 / 012与甲表完全重复
乙表第3行S01 / 0003 / 014与甲表冲突,待核对
乙表第4行S02 / 0004 / 01空数量未报,待核对

“完全重复”在本例指同一键的全部业务字段均相同。实际还有商品、金额或日期时,应把它们一并比较,不能只比数量。

读取与校验完成后,再决定哪些行能合并

工具先检查必需列、编号类型和数量规则,给每行附上源文件、工作表与原行号。空数量不自动变成0,因为0表示确认没有数量,而空值在本例表示未报。

当 Excel 将纯数字编号按数值读入时,可能去掉前导零,并受到15位有效数字的精度限制。此类编号应在输入或导入前按文本处理。若原文件已损失数字,工具应标出异常并回查来源,不能仅改显示格式后宣称修复。

冲突按业务键成组处理

0001的两行内容一致,保留一条,并把另一条登记为重复来源。0003的数量分别是3与4,工具把两行放进同一冲突组,可用结果中暂不包含该键。操作员看到两边原值及来源后,向提交人确认正确数量。

确认结果另作记录,写明选用值、确认人和依据,再生成新批次。不要直接把异常表里的3改成4却不留下原因,也不要因为乙表较晚收到就认定4正确。

交付三份能彼此核对的结果

本批共读取6行,得到可用2行、完全重复1行、待核对3行;待核对包含冲突2行和缺值1行。可用明细的数量合计为3件,明确不包含未确认的0003和0004。这是部分可用结果,不是全部业务总量。

输出包含可用明细、异常清单和批次摘要。摘要显示处理规则版本、来源文件清单、6=2+1+3的核对关系,以及是否还有无法读取的文件。原始文件留存,不随合并操作修改。

验收用原六行反向追查

逐行确认去向,再从可用明细回查原行,从冲突组找到两个来源。重复执行同一批输入,应得到相同分类;补齐0004后重跑,应记录新批次与变化原因。若只交付总数而无法解释0003为何没计入,这个方案就没有完成差异核对。

多表合并输出清单与本例核对数

可用明细:唯一键|业务字段|源文件|工作表|原行号|批次号。
异常清单:异常组编号|唯一键|原值|异常类型|来源位置|确认人|确认结论|依据|后续批次。
重复清单:保留行位置|重复行位置|比较字段|处理规则。
本例输入6行=可用2行+完全重复1行+待核对3行。
本例待核对3行=同键冲突2行+数量缺失1行。
本例可用数量3件;未确认订单0003、0004不计入。
批次摘要:规则版本|输入文件清单|读取失败文件|各分类数量|输出位置|生成时间。

可直接选中文本,手动复制。

参考来源

您是否也遇到类似问题?

从一个表格、一项功能或一段流程入手,找到适合您的优化方案。

沟通我的需求