用excel制作销售管理系统(销售部门的询单管理系统)
生产计划是日常工作经常会接到销售部门的“询单”,就是订单没下达,客户先咨询如果下达订单的话几天能够交货?此时因为订单还没有下达,没有办法利用ERP跑物料需求,只能根据经验回复,很有可能不是很准确,此时如果有一个Excel版本所有产品的全阶展开BOM明细表,就可以根据BOM分解的物料需求,更加精准的回复销售部门的业务需求了;
不单单是产品可以,业务部门的配件、半成品都可以,所以PMC还是非常有必要创建自己的专属的产品BOM表,已应对销售部门的不同业务需求。当然有条件的工厂,还是开发出自己专属的“询单管理系统”。
上几篇文章已经对单个产品的BOM的上下层关系作了简单的查询系统,今天设计一张Excel版本串联查询报表,需要实现以下功能;
1. 可以快速查询上下层对应关系;
2. 可以快速的查询物料对应产品的关系;
3. 可以快速的判断物料的专用以及通用;
4. 可以实现订单转物料需求;
5. 可以根据BOM的属性进行不同层次的结构配置;
第一次建模的时候,可以先用一个产品系列来测试,我们从ERP导出“WT3”系列的6款产品来做模板测试。这6款产品只是对应出口的国家不一样,这几款产品的BOM合并在一起的目标就是建立一个能够满足上面条件的BOM查询报表;
导出来发现这个系列的BOM总共展开有7层,总共子项物料代码1750个,这里需要做的第一件事就是把0层放到A列,此时发现,不同产品之间全部是空白的(ERP导出原因没有合并同类项目);
此时可以用Excel的操作来解决这个问题:选中A1:A1751后,依次点:F5定位→定位条件→空值→录入公式=A2→Ctrl加回车→批量输入→选中后→复制→选择性粘贴→粘贴数值;这样就把0层和子件层对应起来了,这一步的目的就是方便后续的物料对应关系查询;
我们再把上层代码加上去,这一步的目的是这个系列的产品子项物料代码的上下层关系对应,录入公式(公式的相关说明见59和60):=IF(B2=".1",A2,INDEX($C$2:C2,XMATCH(VLOOKUP(B2,上层对应关系!$A:$B,2,0),$B$2:B2,0,-1))),向下填充得到下图结果
这一步完成后,基本的基础数据资料就有了,我们来实现上文中说的第1项可以快速查询上下层对应关系;根据BOM中的信息,外购件是没有下层的,只有自制件有下层,所以我们新建一个报表,把自制件筛选出来后,再删除重复项目;=FILTER(BOM多级展开!G2:G1751,BOM多级展开!D2:D1751="自制"),得到435个自制件,这里的自制件有重复项,所以需求再次输入嵌套函数:=UNIQUE(FILTER(BOM多级展开!G2:G1751,BOM多级展开!D2:D1751="自制")),把重复项目删除,得到36个自制件;
现在再次用函数把这些自制件的下层转成二维报表,转成二维表我们需要再次用到上面的思路,通过筛选对应的条件,再删除重复项,就可以得到自制件对应的零件二维表了;再做二维表的时候发现刚刚零件对应下层明细表中没有把产品过滤掉,所以需要重新加上这个判断;
=UNIQUE(FILTER(BOM多级展开!G2:G1751,(BOM多级展开!D2:D1751<>"外购")*(BOM多级展开!B2:B1751<>".1")))
FILTER多条件判断就是用*号代码并且,用 号代表或者;
录入函数=FILTER(BOM多级展开!C2:C1751,BOM多级展开!G2:G1751=对应下层关系!A2),发现有重复项,而且还是垂直方向的,所以分别用UNIQUE和TRANSPOSE进行多次嵌套
根据上面的思路,把公式更改为=TRANSPOSE(UNIQUE(FILTER(BOM多级展开!C2:C1751,BOM多级展开!G2:G1751=对应下层关系!A2))),并向下填充,就可以得到下层关系对应表了;
未完待续……
我是古哥:
从事制造行业18年,在企业运营、供应链管理、智能制造系统等方面具有丰富的实战经验。企业智能化,柔性化计划运营管理专家,擅长通过企业流程优化规范,企业管理、导入计划运营提升企业效率;对提高企业准时交货率,降低企业库存,输出智能制造人才有丰富的经验。学习PMC生产计划,关注古哥计划!
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。