仓管必会:一表看懂每个物料在哪存、存多少、几处放
优秀创作者
在完成按仓库名称的汇总分析后,另一个关键维度是按存货编码进行汇总。与仓库维度不同的是,仓管员不仅需要了解每个物料的总库存量,更需要掌握该物料在哪些仓库或仓位中有分布,即:一个存货编码是否同时存在于多个仓库中(如:不合格品仓、成品仓、待检仓、良品仓等)。
汇总编码
在完成仓库维度的汇总后,接下来我们需要从物料维度出发,对每个存货编码进行库存汇总分析。这有助于仓管员识别高库存物料、重点管理对象,并为后续的多仓分布分析打下基础。
新建工作表,命名为:存货编码汇总,在单元格B2 输入以下动态数组公式,实现按存货编码的库存汇总
=GROUPBY(现存量!A2:.A300000,现存量!C2:.C300000,SUM,,0,-2)
函数解释:
此公式将按“存货编码”分组,对“现存量”进行求和,并按汇总数量降序排列(从大到小),便于优先关注库存量大的物料。虽然 GROUPBY 可直接输出两列结果,但为了便于后续在其他公式中灵活引用(如使用 # 溢出引用),建议将结果拆分为两个独立的列:为此,我们使用 INDEX 函数分别提取 GROUPBY 的第一列和第二列结果:
分别录入:
B2=INDEX(GROUPBY(现存量!A2:.A300000,现存量!C2:.C300000,SUM,,0,-2),,1)
C2=INDEX(GROUPBY(现存量!A2:.A300000,现存量!C2:.C300000,SUM,,0,-2),,2)
拆分后,B2# 和 C2# 可作为动态数组被其他公式直接引用,提升报表的自动化程度与可维护性。
为了增强报表的可读性和结构完整性,在A2 单元格中添加自动编号:=SEQUENCE(ROWS(B2#)),自动生成从1开始的连续序号,数量与存货编码行数一致,即使数据增减也能自动调整。
汇总仓位
在完成按存货编码的库存数量汇总后,仓管员往往还需要了解:每个物料具体存放在哪些仓库或仓位?尤其是在实际业务中,同一个存货编码可能分布在多个仓位(如:良品仓、不合格品仓、待检区、线边仓等),若不能集中查看,容易造成调拨误判或盘点遗漏。
因此,我们需要将同一存货编码对应的所有仓位信息合并到一个单元格内,实现“一物多仓”的清晰呈现。我们采用“聚合 + 查找引用”的思路,构建动态联动的仓位汇总表。:
=VLOOKUP(B2#,GROUPBY(现存量!A2:.A300000,现存量!B2:.B300000,ARRAYTOTEXT),2,0)
公式解释:
将每个存货编码对应的所有仓库名称合并为一个以逗号分隔的文本字符串(如:“成品仓, 不合格仓, 待检区”);核心函数:ARRAYTOTEXT新一代文本聚合函数,自动处理数组转文本,支持自定义分隔符(默认为逗号)通过VLOOKUP函数在生成的“编码-仓位文本”映射表中,精确查找当前行的存货编码,并返回对应的合并仓位信息。
通过此方法,仓管员可以快速掌握:哪些物料存在多仓存放?是否存在管理混乱?特定编码是否误入异常仓位(如不良品仓)?调拨或领料时应优先从哪个仓位取货?这不仅提升了找货效率,也为后续的仓储规范化治理(如一物一位、定置管理)提供了数据依据。
统计仓位数
在完成“存货编码”的库存汇总及多仓合并展示后,为进一步提升管理精细度,我们还需要回答一个关键问题:每个物料在多少个不同的仓位中存放?是否存在同一物料分散多处、管理混乱的情况;哪些物料适合进行归位整合或调拨优化;为后续的库存健康度分析和仓储空间治理提供量化依据。
我们继续采用GROUPBY 聚合 + VLOOKUP 动态匹配 的思路,先按存货编码分组,统计其对应的非重复仓位数量,再通过查找实现自动填充。
=VLOOKUP(B2#,GROUPBY(现存量!A2:.A300000,现存量!B2:.B300000,COUNTA),2,0)
公式详解:对每个存货编码下关联的仓位名称进行计数。由于原始数据中同一编码在同一仓位通常只出现一次(ERP规则),因此 COUNTA 可直接反映其分布的仓位总数。在生成的“编码 → 仓位数量”映射表中,精确查找当前行的存货编码(VLOOKUP),并返回对应的仓位计数。
通过该字段,仓管员可快速识别:高分布风险物料:仓位数≥ 3 的编码,可能存在管理盲区;集中管理标杆:仓位数 = 1 的编码,说明存储规范,可作为优化目标;结合库存量分析,判断是否需要启动归仓整合或定置管理优化。