日期计算(如何根据零件日需求和零件库存快速计算出欠料日期)

在生产计划中物料需求是非常重要的一个模块,一般在PMC职能中的分工中就有PC和MC,当中的MC就是物料控制,物料控制的一个基本功就是需要根据需求日期和对应的库存计算出欠料?如下图中,已经知道每个零件的库存数量,以及每天的需求数量,需要快速的计算出每个零件的最早断料的日期?

对于这样的供需计算,如果是手动运算的话,就是一个简单的数学加减运算,如零件1的库存300,从6月1日开始分别减去需求,一直减到没有库存,再看一下断料对应的日期就可以计算出。6月1日到6月4日的需求320,超过库存300的需求量,所以6月4日这天会断料,并欠料-20 PCS;因为零件数量非常多,不可能每一个零件都这样计算,所以需要想办法用公式解决。

辅助区域的方法

新增加1:1对应的辅助列用零件库存减去6月1日到6月6日的累计需求。其中累计需求这个公式需要重点记忆一下,格式如下:=SUM($D3:D3)

这样就是把第一个单元格的列锁定了,通过向右向下填充公式就可以快速的累计求和,再用库存减去这个累计需求求和(录入公式:=$C8-SUM($D3:D3)),就可以得到对应的供需计算结果。如下图所示:

运算结果中,每个零件最早出现负数的单元格对应的日期,就是最快断料的日期,这里可以用IF来判断一下,录入公式:

=MIN(IF(D8:I8<0,$D$7:$I$7))

公式释义:如果D8:I8<0,就返回对应的日期,这里分别是6-4,6-5,6-6,再取最小的日期。


365版本解决方案

为了表格的模板固定,能不加辅助区域的就不加辅助区域,所以古老师继续分享不加辅助区域的方法,这里最佳方案就是用365版本经典的SCAN+LAMBDA来解决。为了方便大家理解,先分开写公式:

录入公式:=SCAN(0,D3:I3,LAMBDA(X,Y,X+Y)),就可以得到上面需要加辅助区域才能解决的累计求和的问题,SCAN函数和LAMBDA函数相当于把每次运算的结果都重新计算。通俗的理解就是X,Y,X+Y,这几个参数每次都保留继续运算。

有了这个结果后,继续执行库存减去需求,再用IF判断,配合MIN,就可以一个公式得到最快断料的日期,合并公式后,录入函数,并下拉填充:

=MIN(IF($C3-SCAN(0,D3:I3,LAMBDA(X,Y,X+Y))<0,$D$2:$I$2))

别看上面的公式非常复杂,如果用A代表库存减去需求,B代表需求日期,公式就可以简单理解成:MIN(IF(A<0,B)),配合LET公式变化成:

=LET(A,$C3-SCAN(0,D3:I3,LAMBDA(X,Y,X+Y)),B,$D$2:$I$2,MIN(IF(A<0,B)))

低版本解决方案

为了照顾低版本,也就没有SCAN和LAMBDA函数的生产计划员,古老师写一个低版本的函数,函数比较复杂,就不解释了(函数太复杂,要解释又要写一版文章),直接上函数结果,录入函数:

=INDEX($D$2:$I$2,MATCH(1=1,SUBTOTAL(9,OFFSET($D3,,,,COLUMN($A:$F)))>$C3,))


源文件:63 如何根据日需求和库存快速判断欠料日期?


我是古哥:

从事制造行业18年,在企业运营、供应链管理、智能制造系统等方面具有丰富的实战经验。企业智能化,柔性化计划运营管理专家,擅长通过企业流程优化规范,企业管理、导入计划运营提升企业效率;对提高企业准时交货率,降低企业库存,输出智能制造人才有丰富的经验。学习PMC生产计划,关注古哥计划!

声明:好星座所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者古哥计划所有,原文出处。若您的权利被侵害,请联系 删除。

本文链接:https://www.haoxingzuo.com/w/33649.html