站内精选
核心结论

盘点核对最贵的不是盘,是比对。本文用一份 3,842 行账面与 3,796 行实盘的真实规模数据,把核对拆成五步:拼复合键、比总量、分三类、回溯单据、出两张表。一个关键动作是把匹配键从「商品名」换成「编码+仓库」,271 条差异当场降到 68 条,其中 203 条是匹配错造成的假差异。

盘点结束后最耗时的不是盘,是核对。账面 3,842 行、实盘 3,796 行,一对比冒出 271 条差异。文章给一条固定顺序:对口径、比总量、比单品、回溯单据,把 271 条压到 15 条真问题。

一句话结论

盘点和账面核对的正确顺序是「先对口径、再对总量、再对单品、最后回溯单据」,跳步就会白干。还有一个几乎决定成败的细节:匹配键必须是编码 + 仓库的复合键,不能用商品名。同名不同规格、同规格不同仓库这两件事,能吃掉八成以上的假差异——我这次 271 条差异里,203 条是匹配错造成的。

这篇解决什么问题

三种情况最常见。一是财务催差异表,你用 VLOOKUP 一拉满屏 #N/A,分不清是「系统里没有」还是「名称写错了」。二是表交上去了,仓库说「这个我盘过是对的」,一查发现是一个商品的两个规格被匹到了一起,返工一遍。

根子是同一个:把「比对」当成了起点。比对之前必须先把两张表的口径拉到一致——编码统一、仓库统一、单位统一、同名规格做区分。口径不对齐,比对结果全是噪音。文章把它固定成五步,每步一个可复制的提示词,做完得到一张带着单据线索的差异表。

开始前要准备什么

  • 系统账面导出表:至少六列——商品编码、名称、规格、仓库、账面数量、单位。导出时把「已冻结」「已作废」的单据状态筛掉,否则未生效的出入库也会算进账面。
  • 实盘表:手工表或 PDA 导出都行,同样要有编码、规格、仓库、实盘数量、单位。手工表常见问题是同一商品分仓位盘了两行,后面要合并。
  • 空差异表:列固定成八列——编码、名称、规格、仓库、账面数、实盘数、差异数、差异类型。表头先定死,后面所有动作都往这张表里填。
  • 近三个月的出入库流水:用来做单据回溯。没有流水,差异只能停在「数量不符」,落不到具体单据。

具体怎么做

第一步:把匹配键做成「编码 + 仓库」的复合键

在两张表最右边各加一列,用连接符把编码和仓库拼起来,例如 =A2&"|"&D2。拼接前先做三件事:编码列统一成文本并去掉前后空格(数字型编码前面的 0 会丢)、仓库名统一(「一号仓」和「1号仓」合成一个)、规格列去掉全角括号和多余空格。做完用数据透视表数一下两边复合键的不重复值,数量应该接近,差得远说明口径不对。

我有两份表:系统账面表和实盘表,字段都是「商品编码、名称、规格、仓库、数量、单位」。
请帮我做四件事:
1. 判断能否直接用「编码+仓库」作为匹配键,指出还需清洗哪些字段才能保证唯一;
2. 给出 Excel / WPS 里拼接复合键的公式,要求编码保持文本格式、不清除前导 0;
3. 列出最容易造成「假差异」的四种情况(名称差异、规格写反、仓库命名不一致、单位不同),每种给一句检查办法;
4. 给一条判断标准:两张表复合键的不重复值数量相差超过多少,就该先停下清洗而不是继续比对。

两张表各前 10 行如下:(粘贴)

第二步:先比总量,不要一上来就比单品

这一步只做一件事:两边总数量各多少、差多少、差的比例多少。千分之三以内通常是计量误差或未过账单据;超过百分之一基本可以确定有整批账实脱节。

这是两个总量:系统账面合计 ______ 件,实盘合计 ______ 件。
请帮我做三件事:
1. 算出差异数与差异率,按「千分之三以内 / 千分之三到百分之一 / 百分之一以上」三档判断严重程度;
2. 每一档给出最可能的成因排序(计量误差、未过账单据、整批漏盘、单位换算错误),并说明用什么证据可以排除前一个;
3. 给出下一步动作:先按仓库分组看差异分布,还是直接进单品比对。

补充:本次覆盖 ______ 个仓库,账面 SKU ______ 个,盘点用时 ______ 小时。

第三步:比单品,输出差异表并分成三类

用复合键匹配,把差异分成三类分开处理:有账无实(账上有、实盘为零或未出现)、有实无账(盘出来了但账上没有这个编码)、数量不符(两边都有、数字不同)。三类的成因完全不同——有账无实多是漏盘或已发出未记账,有实无账多是新品未建档或借用未登记,只有数量不符才需要逐条查单据。另外给数量不符设容差:按件管理的商品容差为 0,按重量计量的取 0.5%。

下面是比对后的差异数据,字段为「编码、名称、规格、仓库、账面数、实盘数」。
请帮我做四件事:
1. 把每条差异归到三类之一(有账无实 / 有实无账 / 数量不符),并说明判定依据;
2. 按差异绝对值从大到小排序,标出前 20 条;
3. 对「有实无账」这一类单独列可能原因,每条附一个可在系统里验证的查询动作;
4. 给一张汇总:三类各多少条、各占百分比,以及一句结论——本次盘点的主要矛盾是哪一类。

差异数据如下:(粘贴,最多 300 行)

第四步:用流水回溯,把差异落到具体单据

每一条「数量不符」都要在流水里倒着找。从盘点日往前推,按复合键筛出该商品该仓库的全部流水,看最后一条的日期和类型。三种情况能解释绝大多数差异:已出库未过账(实物走了、单据挂在待审核)、调拨在途(转出仓已减、转入仓未加)、退货未入库(仓库收了但没做单)。找不到流水的才轮到丢失或错发,这类单独挂账。

这是某一条差异的完整流水(粘贴该商品该仓库近 90 天的记录,字段:日期、单据号、类型、数量、状态)。
差异情况:账面 ______ 件,实盘 ______ 件,差 ______ 件。
请帮我做三件事:
1. 按时间倒序指出最可能解释这条差异的单据,给出单据号和判断理由;
2. 如果流水不足以解释,列出还需补查的三类信息(其他仓库同编码流水、未过账单据、退货记录);
3. 给出结论表述,要求是一句能直接写进差异表「原因」列的话。

如果流水不支撑,就直接说「建议按丢失挂账」,不要强行编一个原因。

第五步:出差异明细表,附一张原因分布

最终交付两样东西:明细表(八列,每条都有单据号或明确结论)和原因分布表(按成因分组,给条数与占比)。明细表给财务对账,分布表给管理层看——后者才决定要不要改流程。某类成因占比超过四成,就不是盘点的问题,是流程有洞。

这是本次盘点的差异明细表(字段:编码、名称、仓库、账面数、实盘数、差异数、差异类型、原因、单据号)。
请帮我做三件事:
1. 按「原因」列归并,把表述不同但同因的条目合成一类(例如「未过账」「单据待审核」应合并);
2. 输出原因分布表:成因、条数、差异数量合计、占比,按占比降序;
3. 针对占比第一的成因给两条流程改进建议,每条都要对应到一个具体操作节点(谁、在什么时点、做什么检查),不要写「加强管理」这类无法执行的建议。

最后用一句话总结:本次暴露的主要是执行问题还是流程问题。

实测记录

用一份真实规模的盘点数据测试:账面 3,842 行,覆盖 4 个仓库、1,196 个 SKU;实盘 3,796 行,由 3 人手工填写后合并。

  • 只按名称匹配:271 条差异。抽查前 50 条,34 条是同一商品的两种规格被匹到一起(500ml 和 750ml 都叫「矿泉水」),9 条是仓库命名不一致。这类差异在表里长得跟真差异一模一样。
  • 换成复合键:差异降到 68 条。这一步花了 25 分钟,其中 18 分钟在统一仓库名和去掉编码前导零。
  • 按仓库分组:68 条里 41 条集中在同一个仓库(60%),而那正是盘点当天下午换班的仓库。只看总量时完全看不出这个聚集。
  • 回溯流水:31 条追到具体单据——未过账出库 11 条、在途调拨 9 条、退货未入库 6 条、其他 5 条;另 22 条是实盘表同一商品分行录入导致重复计数,合并后归零。
  • 最终真实差异:15 条,数量差异 0.6%,落在千分之三到百分之一之间。

最容易错的 3 个地方

第一,用商品名称当匹配键。名称是最不稳定的字段:上午写「A4 复印纸 70g」、下午写「A4纸70克」,机器就当成两个商品。更麻烦的是反向情况——两个不同规格重名会被匹成一条,差异数为 0,问题被彻底藏起来。匹配键只用编码,名称只给人看。

第二,单位不统一就直接相减。一边「箱」一边「瓶」,相减出来毫无意义,但表格不报错。做法是两张表各加一列单位,用条件格式把不一致的行标红,先处理完再算差异;装箱率也要确认是同一个值。

第三,实盘表同一商品多行时直接 VLOOKUP。VLOOKUP 只返回第一个匹配值,后面几行被静默丢弃。分仓位盘、分批次盘、多人分开盘都会造成多行。正确做法是先用 SUMIFS 按复合键汇总实盘数量,再拿汇总值去匹配账面。

可复用的东西

复合键公式:=编码&"|"&仓库,两边各加一列,先数不重复值再比对。25 分钟的动作,省掉后面几小时。

差异三分法:有账无实、有实无账、数量不符。三类成因和处置方式不同,混在一张表里必然返工。任何一次对账——库存、应收、固定资产——都能套这个分法。

单据倒查的窗口:从盘点日往前 90 天。短于 60 天会漏掉跨月在途调拨,长于 120 天会捞进太多已完成单据。如果月结在次月 10 号之后,窗口拉到 100 天。

常见问题解答

账面和实盘的数量单位不一样怎么办

先统一单位再相减,不要直接算差值。做法是两张表各加一列单位,用条件格式把不一致的行标红,逐条确认装箱率(12 瓶一箱和 24 瓶一箱混用会把差异放大一倍或缩小一半)。全部换算成最小计量单位后再比对,差异数才有可比性。

复合键拼好之后,两张表的不重复值数量差多少算不正常

经验值是相差 3% 以内属于正常波动(多为编码清洗残留),超过 5% 就应该停下来先查口径。常见原因是仓库命名不统一、编码前导零被吃掉、规格里有多余空格。这个检查只要一分钟,但能避免后面几小时白做。

差异里有一部分找不到任何单据,应该怎么处理

单独挂一类「无单据支撑」,不要塞进「待查」里混着。这类通常对应丢失、错发或早期建档错误,处置方式是按金额挂账并走审批,同时记录商品编码,下次盘点重点复看。把它和单据问题混在一起,会导致流程改进方向完全错掉。

容差应该怎么设才合理

按计量方式分,不按品类分。按件管理的商品容差为 0,少一件都是差异;按重量、长度、体积计量的商品,容差取 0.5%,因为称重和读数本身有误差。容差内的差异只做记录不列入明细表,否则差异表会被噪声淹掉。

小程序阅读免费
微信扫码进入小程序,按岗位找 AI 实操步骤
微信扫码进小程序
按岗位找 AI 实操步骤 · 提示词可收藏

发表回复

后才能评论