这次我们来看一个在制造业和供应链领域被称为“物控必杀技”的实战方法:三张核心管理表。这不是一个软件工具,而是一套经过验证的、用于物料控制(Material Control)的表格化管理系统。对于物料计划员、仓库主管、生产调度等岗位而言,掌握这套方法,意味着能用最直观的数据驱动决策,显著提升库存周转、降低呆滞料、确保生产不断线,从而体现个人价值,迈向更高薪资岗位。
这套方法的核心在于将复杂的物料管理流程,抽象为三张相互关联的表格:物料需求计划表(MRP)、库存动态表、采购/生产跟进表。它的重点不是概念多复杂,而是能不能在你的日常Excel或ERP系统中落地跑起来。本文将彻底拆解这三张表的设计逻辑、数据联动关系以及实操步骤,让你看完就能搭建起自己的物料控制仪表盘。
核心能力速览
| 能力项 | 说明 |
|---|---|
| 方法本质 | 一套基于表格的物料控制与数据分析方法,非软件工具。 |
| 核心工具 | Microsoft Excel / WPS表格,或任何ERP系统的报表模块。 |
| 核心三表 | 1. 物料需求计划表 (MRP Table) 2. 库存动态监控表 (Inventory Dashboard) 3. 采购与生产订单跟进表 (PO/MO Tracking Table) |
| 核心功能 | 需求计算、库存可视化、欠料预警、订单跟踪、数据追溯。 |
| 硬件门槛 | 普通办公电脑即可,对显存/GPU无要求。 |
| 数据源 | BOM(物料清单)、销售预测/订单、当前库存、在途订单、工时数据等。 |
| 输出价值 | 实现精准采购、降低库存成本、避免生产停线、提升决策效率。 |
| 适合岗位 | 物料计划员(PMC)、仓库管理员、采购员、生产主管、供应链分析师。 |
1. 核心三表:设计逻辑与关联关系
这三张表并非孤立存在,它们通过物料编码和日期这两个关键字段紧密串联,形成一个从计划到执行再到反馈的闭环系统。
1.1 第一张表:物料需求计划表 (MRP Table)
这是整个系统的“大脑”,用于计算未来一段时间内,每种物料“需要多少”以及“什么时候需要”。
表结构核心字段:
- 物料编码/品名/规格:物料唯一标识。
- BOM用量:单个产成品消耗该物料的数量。
- 主生产计划(MPS):未来每日/每周的计划产量。
- 毛需求:根据MPS和BOM计算出的总需求量(MPS × BOM用量)。
- 现有库存:当前仓库可用数量(来自第二张表)。
- 在途量:已下达采购单但未入库的数量(来自第三张表)。
- 安全库存:预设的最低缓冲库存量。
- 净需求:计算核心。公式为:
净需求 = MAX(0, 毛需求 - 现有库存 - 在途量 + 安全库存)。结果大于0则表示需要行动。 - 建议下单量/生产量:根据净需求考虑采购批量(MOQ)、包装规格等调整后的最终建议值。
- 需求时间:根据生产计划倒推得出的最晚必须到货日期。
这张表回答了:要生产这么多产品,我们到底还缺多少料?什么时候必须到位?
1.2 第二张表:库存动态监控表 (Inventory Dashboard)
这是系统的“眼睛”,实时(或每日)反映库存的健康状况,用于预警和复盘。
表结构核心视图:
- 库存概览(Dashboard):
- 总库存金额、总SKU数。
- 库存周转率、平均库龄。
- 高/低/零库存预警物料数量。
- 库存明细与动态:
- 物料编码、品名、规格。
- 当前库存、安全库存上限/下限。
- 今日/本周/本月入库、出库数量。
- 可用库存(当前库存 - 已分配未领用量)。
- 库龄分析(0-30天,31-90天,90-180天,180天以上)。
- 呆滞料标识(例如:超过90天无动态且库存超量)。
- 预警标识:
- 红色(短缺):可用库存 < 安全库存下限。
- 黄色(偏低):可用库存接近安全库存下限。
- 绿色(正常):可用库存在安全库存区间内。
- 蓝色(偏高):可用库存 > 安全库存上限,有呆滞风险。
这张表回答了:我们的库存现状健康吗?哪些料快断了?哪些料积压了?
1.3 第三张表:采购与生产订单跟进表 (PO/MO Tracking Table)
这是系统的“手脚”,跟踪每一项已发出指令的执行状态,确保计划落地。
表结构核心字段(以采购订单为例):
- 订单号(PO#)/ 工单号(MO#):唯一标识。
- 物料编码、供应商/生产车间、订单数量、单价、总金额。
- 下单日期、要求交期(来自第一张表的需求时间)、承诺交期。
- 当前状态:已审批、已发送、已确认、生产中、部分发货、已完货、已入库。
- 进度百分比:直观展示完成度。
- 延期天数:
当前日期 - 承诺交期,正数即为延期。 - 质检状态/合格数量。
- 备注/问题记录:记录任何异常,如品质问题、交货延迟原因。
这张表回答了:我们下的单子到哪一步了?会不会延误?延误了怎么办?
三表联动流程:
- 计划驱动:第一张表(MRP)计算出“净需求”和“需求时间”。
- 执行跟踪:将“净需求”转化为具体的第三张表(PO/MO)中的订单,并锁定“需求时间”作为“要求交期”。
- 状态反馈:第三张表(PO/MO)的“入库数量”实时增加第二张表(库存)的“当前库存”。
- 闭环修正:第二张表(库存)更新后的“当前库存”和“在途量”,作为下一次第一张表(MRP)运算的输入数据。 如此循环,形成数据驱动的管理闭环。
2. 适用场景与使用边界
2.1 谁最适合用这套方法?
- 中小制造企业的PMC部门:在没有完善ERP或MRP模块时,用Excel快速搭建核心物料控制体系。
- 大型企业的基层物料计划员:用于个人工作提效,在ERP之外做更灵活的分析和预警。
- 仓库主管:用于动态监控库存,精准执行收发料,提前预警缺料和呆滞。
- 采购员:清晰跟踪订单进度,主动应对延期风险,数据化与供应商沟通。
- 新任管理者或转岗人员:快速建立全局物料控制视角,抓住工作重点。
2.2 能解决哪些具体问题?
- 救火队变规划部:从每天处理紧急缺料,转变为提前预见缺料并预防。
- 数据打架变统一口径:计划、仓库、采购基于同一套核心数据工作,减少扯皮。
- 凭经验变凭数据:下单量、安全库存设置不再“拍脑袋”,而是基于历史数据和计算模型。
- 被动等待变主动跟进:订单跟进表让每个订单的状态一目了然,便于主动管理供应商或生产部门。
- 隐藏问题可视化:库龄分析、呆滞料标识让库存成本问题无处遁形。
2.3 不适合什么场景?
- 超大规模、流程极度复杂的集团性企业:这套方法是精髓和基础,但可能需要更专业的APS(高级计划排程)系统和更大规模的团队协作。
- 项目型、一次性生产(如大型设备制造):物料需求波动极大,BOM不固定,此方法需要大幅调整。
- 期望完全自动化、无需人工干预:这套方法的核心是“人机结合”,需要管理者定期维护数据、解读报表并做出决策。
2.4 合规与风险边界
- 数据安全:表格中可能包含核心BOM、成本、供应商信息,必须做好文件权限管理和加密。
- 决策责任:表格输出的是“建议”,最终的采购、生产决策仍需负责人结合实际情况(如供应商产能、市场波动、品质风险)进行审批。
- 系统边界:如果公司已有ERP,此方法应作为补充和深化分析的工具,避免与主系统数据冲突。重点应放在ERP不擅长或提取困难的数据分析和可视化预警上。
3. 环境准备与前置条件
在动手建表前,需要确保以下基础数据和环境是可靠可用的。
3.1 数据基础(“原材料”)
- 准确的物料主数据:
- 唯一的物料编码是贯穿所有表的生命线。
- 清晰的品名、规格、单位、采购/生产提前期。
- 物料分类(如原材料、包材、电子件)。
- 完整的BOM(物料清单):
- 产成品与组件、原料的层级和数量关系必须准确。
- 考虑损耗率、替代料情况。
- 可靠的需求来源:
- 主生产计划(MPS):来自销售预测或客户订单的、经过评审的可执行生产计划。
- 计划的时间颗粒度(周/日)决定了你报表的更新频率。
- 库存数据基准:
- 进行一次彻底的仓库盘点,确保系统账、卡片账、实物“三账合一”。
- 建立规范的入库、出库、调拨、盘点流程,保证后续库存数据动态更新的准确性。
- 供应商/生产部门基础信息:用于订单跟进表。
3.2 工具与环境
- 核心工具:Microsoft Excel或WPS表格。强烈建议使用Excel,因其Power Query、数据透视表、函数(如VLOOKUP, SUMIFS, XLOOKUP)功能更强大。
- 技能要求:
- 熟练掌握Excel常用函数(
VLOOKUP/XLOOKUP,SUMIFS,IF,MAX,TODAY等)。 - 了解数据透视表制作基本图表。
- 懂得使用条件格式进行预警标识。
- 熟练掌握Excel常用函数(
- 协作环境:如果涉及多人维护(如计划员维护MRP表,仓管员维护库存表),需规划好文件共享方式(如共享网络驱动器、使用腾讯文档/金山文档的协作功能),并定义清晰的更新职责和时间点(如每日上午10点前更新昨日库存动态)。
4. 三张表的构建与启动步骤
下面以Excel为例,分步构建这三张表。我们将创建一个包含三个工作表的工作簿。
4.1 步骤一:创建“库存动态表”
这是基础数据源,应先建立。
- 新建工作表,命名为
Inventory。 - 创建表头:
物料编码 | 品名 | 规格 | 单位 | 当前库存 | 安全库存下限 | 安全库存上限 | 昨日入库 | 昨日出库 | 已分配未领 | 最后活动日期 | 库龄(天) | 库存状态 - 输入基础数据:将盘点后的物料清单、库存数量、预设的安全库存填入。
- 设置公式:
- 可用库存:在
当前库存后插入一列,公式为:=当前库存 - 已分配未领。 - 库存状态:使用
IF函数和条件格式。// 假设‘可用库存’在F列,‘安全库存下限’在G列,‘安全库存上限’在H列 =IF(F2 < G2, "短缺", IF(F2 < G2*1.2, "偏低", IF(F2 <= H2, "正常", "偏高"))) - 库龄:
=TODAY() - 最后活动日期。
- 可用库存:在
- 创建数据透视表Dashboard:
- 选中数据区域,插入数据透视表。
- 将
库存状态拖到“行”,物料编码拖到“值”(计数)。 - 即可快速看到处于各状态的物料数量。还可以用
当前库存*单价(需关联单价表)来计算总库存金额。
4.2 步骤二:创建“MRP需求计划表”
这是核心计算引擎。
- 新建工作表,命名为
MRP。 - 创建表头(按时间周期展开,如按周):
物料编码 | 品名 | 规格 | 单位 | BOM用量 | 第1周毛需求 | 第2周毛需求 | ... | 第N周毛需求 | 现有库存 | 在途量 | 安全库存 | 第1周净需求 | ... | 第N周净需求 | 建议下单量 | 需求时间 - 关联数据与设置公式:
- 毛需求:
=VLOOKUP(物料编码, MPS表范围, 对应周次列, FALSE) * BOM用量。你需要一个单独的MPS表或区域来存放每周计划产量。 - 现有库存:
=VLOOKUP(物料编码, Inventory!A:F, 5, FALSE)// 从库存表获取‘当前库存’。 - 在途量:
=SUMIFS(PO_Tracking!订单数量, PO_Tracking!物料编码, 本行物料编码, PO_Tracking!状态, "<>已入库")// 从订单跟进表汇总未入库量。 - 净需求(以第1周为例):
=MAX(0, 第1周毛需求 - 现有库存 - 在途量 + 安全库存)。注意:计算第二周净需求时,“现有库存”应变为“第一周可用库存”,即现有库存 + 在途量 - 第一周毛需求 + 第一周净需求(到货),这是一个滚动计算,通常需要借助辅助列或更复杂的公式,对于初学者,可先简化按周独立计算。 - 建议下单量:
=CEILING(净需求总和, 采购批量)//CEILING函数向上取整到采购批量的倍数。 - 需求时间:找出第一个出现净需求>0的周,并返回该周的第一天。
- 毛需求:
4.3 步骤三:创建“采购订单跟进表”
这是执行跟踪器。
- 新建工作表,命名为
PO_Tracking。 - 创建表头:
订单号 | 物料编码 | 品名 | 规格 | 供应商 | 订单数量 | 已入库数量 | 未完成数量 | 单价 | 下单日期 | 要求交期 | 承诺交期 | 当前状态 | 进度% | 延期天数 | 备注 - 设置公式与规则:
- 未完成数量:
=订单数量 - 已入库数量。 - 进度%:
=已入库数量 / 订单数量,设置百分比格式。 - 延期天数:
=IF(AND(承诺交期<>"", TODAY()>承诺交期, 状态<>"已关闭"), TODAY()-承诺交期, 0)。 - 状态下拉列表:使用数据验证,创建列表:
已审批, 已发送, 已确认, 生产中, 发货中, 部分到货, 已完货, 已入库, 已关闭。 - 条件格式:对“延期天数”>0的行标红;对“进度%”<100%且临近交期的行标黄。
- 未完成数量:
4.4 步骤四:建立表间关联与数据刷新
- 使用
VLOOKUP/XLOOKUP函数:确保MRP表和PO_Tracking表都能通过物料编码从Inventory表获取最新的品名、规格等信息,避免重复输入和错误。 - 定义名称管理器:为关键数据区域(如
Inventory表的A到M列)定义名称,使公式引用更清晰。 - 设置数据刷新习惯:
- 每日:仓管员更新
Inventory表的“昨日入库”、“昨日出库”、“当前库存”、“最后活动日期”。 - 每周/每计划周期:计划员更新
MPS数据,重新计算MRP表。 - 实时/每日:采购员更新
PO_Tracking表的“已入库数量”、“当前状态”、“承诺交期”。
- 每日:仓管员更新
- 启动检查:更新完基础数据后,检查
MRP表的“净需求”是否准确产生,Inventory表的预警是否正常触发,PO_Tracking表的延期提醒是否工作。
5. 功能测试与效果验证:从数据到决策
系统搭建好后,需要通过模拟或真实业务场景进行测试。
5.1 测试一:缺料预警是否灵敏
- 测试目的:验证当库存低于安全库存时,系统能否有效预警。
- 操作步骤:
- 在
Inventory表中,手动将某个常用物料(如螺丝A)的“当前库存”修改为低于其“安全库存下限”的值。 - 观察该物料所在行的“库存状态”是否自动变为“短缺”(红色预警)。
- 切换到
MRP表,查看该物料在未来几周的“净需求”是否立即出现正数。
- 在
- 预期结果:
Inventory表出现红色预警,MRP表对应物料产生净需求。 - 成功标准:无需人工计算,表格自动、准确地标识出缺料风险,并量化了短缺的数量和时间。这能让你提前数天或数周发起采购动作。
5.2 测试二:MRP计算是否准确
- 测试目的:验证系统能否根据生产计划、库存和在途量,正确计算出需要采购/生产的数量。
- 操作步骤:
- 在
MPS区域,为某个产品(如产品Z)下周计划产量输入100台。 - 在
BOM中,产品Z需要螺丝A4个。 - 确保
Inventory表中螺丝A的库存为200个,无在途量,安全库存为50。 - 查看
MRP表中螺丝A下周的“毛需求”是否为400(100*4),“净需求”是否为MAX(0, 400-200-0+50)=250。
- 在
- 预期结果:
MRP表准确计算出需要为产品Z的生产额外准备250个螺丝A。 - 成功标准:计算逻辑符合业务实际,考虑了现有库存和安全库存,避免了多买或少买。
5.3 测试三:订单跟进与延期提醒
- 测试目的:验证系统能否有效跟踪订单进度,并对延期交货发出提醒。
- 操作步骤:
- 在
PO_Tracking表中,新增一条螺丝A的采购订单,数量100,承诺交期为昨天或前天。 - 将“当前状态”设为“已确认”或“发货中”。
- 保存文件,第二天打开(或手动修改系统日期测试)。
- 在
- 预期结果:该订单行的“延期天数”自动变为正数(如1或2),并且该行通过条件格式显示为红色。
- 成功标准:系统自动高亮延期订单,迫使采购员必须去跟进处理并更新“备注”栏,实现了对执行过程的透明化管理和压力传递。
5.4 测试四:呆滞库存识别
- 测试目的:验证系统能否帮助发现长期不动的库存(呆滞料)。
- 操作步骤:
- 在
Inventory表中,找一个物料,将其“最后活动日期”修改为90天以前。 - 确保其“当前库存”大于0。
- 观察“库龄”列是否显示大于90天。
- 在
- 预期结果:该物料库龄显示为90天以上。你可以通过筛选或条件格式(如将库龄>90天的行标为橙色)快速找出所有呆滞料。
- 成功标准:能快速生成呆滞料清单,为库存处理(打折、报废、再利用)提供依据,加速库存周转。
6. 进阶应用:数据透视与可视化看板
基础三表运行稳定后,可以利用Excel的数据透视表和图表功能,制作管理看板,进一步提升决策效率。
6.1 创建库存健康度看板
- 基于
Inventory表数据,插入数据透视表。 - 将
库存状态拖入“行”,将物料编码拖入“值”(计数)。 - 选中数据透视表,插入一个饼图或条形图,直观展示“正常”、“短缺”、“偏高”、“呆滞”物料的分布比例。
- 将
库龄分段(0-30,31-90…)拖入“行”,当前库存金额拖入“值”,生成库龄结构分析图。
6.2 创建采购订单绩效看板
- 基于
PO_Tracking表数据,插入数据透视表。 - 将
供应商拖入“行”,将订单数量、延期天数(平均值)拖入“值”。 - 可以生成图表,分析各供应商的交付及时率。
- 将
当前状态拖入“行”,可以查看所有订单处于哪个环节,及时发现瓶颈(如大量订单卡在“供应商确认”环节)。
6.3 创建物料需求趋势看板
- 基于
MRP表数据,将未来每周的“净需求”数据汇总。 - 插入折线图,展示关键物料未来需求的变化趋势,为战略采购或谈判提供依据。
这些看板可以放在一个单独的Dashboard工作表中,每天打开文件第一眼就能看到核心KPI和问题点。
7. 常见问题与排查方法
在搭建和使用过程中,你可能会遇到以下问题:
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| MRP表计算出的需求数量巨大或为负 | 1.VLOOKUP引用错误,关联到了错误的数据。2. 库存、在途量数据未及时更新或为错误值。 3. 安全库存设置不合理(如为负数)。 | 1. 检查MRP表中VLOOKUP函数的引用范围是否正确。2. 核对 Inventory和PO_Tracking表中对应物料的数据。3. 检查安全库存、BOM用量等基础参数。 | 1. 使用XLOOKUP代替VLOOKUP,精确匹配。2. 建立数据更新核对机制,确保源数据准确。 3. 复核并修正基础参数。 |
| 库存预警失灵,该报警的没报 | 1. 条件格式的公式写错或应用范围不对。 2. “可用库存”计算错误(未减去“已分配未领”)。 3. 安全库存上下限设置过于宽松。 | 1. 选中预警列,查看管理条件格式规则。 2. 手动计算几个物料的“可用库存”,与公式结果对比。 3. 回顾安全库存设置逻辑。 | 1. 重新设置条件格式,确保公式引用正确单元格。 2. 修正“可用库存”计算公式。 3. 基于历史消耗数据重新设定安全库存。 |
| 订单跟进表“延期天数”不更新 | 1. 电脑系统日期不正确。 2. 公式中 TODAY()函数被误改为固定日期。3. “状态”为“已关闭”或“已入库”的订单不应计算延期。 | 1. 检查电脑右下角日期。 2. 检查 延期天数列的公式,确认使用=TODAY()。3. 检查公式中是否包含对“状态”的判断。 | 1. 修正系统日期。 2. 将公式改为 =IF(AND(承诺交期<>””, TODAY()>承诺交期, 状态<>”已关闭”), TODAY()-承诺交期, 0)。 |
| 文件运行越来越卡 | 1. 使用了大量整列引用(如A:A)的数组公式或VLOOKUP。2. 数据量过大,历史数据未清理。 3. 使用了过多的易失性函数(如 TODAY,NOW)。 | 1. 查看公式,将整列引用改为精确范围(如A2:A1000)。 2. 检查工作表行数。 3. 评估 TODAY()的使用是否必要。 | 1. 优化公式引用范围。 2. 将历史数据归档到另一个工作簿,当前表只保留活跃数据。 3. 考虑在打开文件时手动输入当天日期到一个单元格,其他公式引用该单元格。 |
| 多人协作时数据冲突或覆盖 | 多人同时编辑同一个Excel文件。 | 询问最后保存的人,或查看文件修改历史(如果启用)。 | 1.最佳实践:使用在线协作表格(如腾讯文档)。 2.次选:规定不同人更新不同的工作表或时间段。 3. 使用共享工作簿功能(较老,不稳定)。 |
8. 最佳实践与使用建议
要让这套“三张表”系统发挥最大威力,并可持续运行,需要遵循以下实践:
- 始于简化,快速迭代:不要一开始就追求大而全。先做出最核心的
MRP计算和库存预警功能,跑通一两个物料的流程。收到反馈后,再逐步增加订单跟进、库龄分析、看板等功能。 - 数据质量是生命线:“垃圾进,垃圾出”。必须建立严格的流程,确保
Inventory表的每一次出入库、MPS的每一次调整、PO_Tracking的每一次状态更新,都是及时和准确的。可以考虑设置简单的数据录入校验规则。 - 定期复盘与调优:
- 每周:复盘MRP计划的准确性,分析预测与实际的差异,调整安全库存参数。
- 每月:复盘库存周转率和呆滞料情况,推动处理呆滞库存。
- 每季度:复盘供应商交付绩效,更新采购提前期数据。
- 明确职责与更新节奏:
- 计划员:负责维护
MPS和MRP表,每日/每周运行需求计算,发布采购申请。 - 仓管员:负责每日更新
Inventory表的动态数据,确保账实相符。 - 采购员:负责维护
PO_Tracking表,实时更新订单状态和交期。 - 最好能固定一个每日或每周的同步会议,基于这些表格数据沟通异常和决策。
- 计划员:负责维护
- 合规与授权提醒:这套表格包含了公司的核心运营数据(BOM、成本、供应商、生产计划)。务必做好文件加密和权限管理,仅限必要人员访问。考虑将数据存储在安全的内部服务器或加密的云盘,而非个人电脑。
掌握“物控三张表”的本质,是掌握了一种数据驱动的物料管理思维。它让你从繁杂的日常事务中抽身,通过结构化的工具看清问题、预测风险、跟踪执行。无论你是想提升当前岗位的效率,还是为面试更高薪的物控、计划岗位做准备,亲手搭建并运行起这套系统,都将是你能力最有力的证明。它不依赖于任何昂贵的软件,只依赖于你的逻辑、耐心和对业务的理解。现在,就打开Excel,从你负责的最重要的一个产品或物料开始,尝试构建你的第一张表吧。