《Excel制作动态WaterFallAnalysis方法详解》由会员分享,可在线阅读,更多相关《Excel制作动态WaterFallAnalysis方法详解(4页珍藏版)》请在金锄头文库上搜索。
1、Excel 制作动态 WaterFall Analysis 方法详解(全)-包含 VBA 代码示例Supply Chain S&OP 相关项目中往往会涉及 Fcst 准确性分析,Water Fall Analysis 是一个很流行的分析手段。通常 Fcst tracking 有两个方向,一个是销售预测者和真实销售值的对比,另外一个是给供应商的预测订单数量和实际订单数量的对比。本文介绍后者在 Excel 中的作法。1-首先建立两个表格放数据,Monthly Fcst , Monthly Sale,Monthly Fcst 表格存放历史上每个月 Next 12 Month Fcst, Monthl
2、y Sales 则是每个月 Actual Sale。高级一点的这两个表格也可以 Link 到数据库达到自动更新的效果。2-设计一个新 Sheet 如上图,行和列名分别列出月份,旁边打 1 到 100 做辅助数据。观察 WaterFall 中规律有三点,(1)行数和列数相等时为表格对角线的单元格,里面放销售值。(2)列数比行数大时为上半部分表格,放预测值。(2)列数比行数小时放空值。有心的人可能会发现这是大学线性代数矩阵那一章节基本概念。如果要显示不同供应商的 Water Fall,在左上角加一个单元格叫 Selection,里面放供应商名字给用户选择,这样就是一个动态 Waterfall 了。
3、在第一个单元格输入类似以下的公式,填充至所有,动态 waterFall 就大功告成了,如果你选择供应商 A,waterFall 就会刷新成 A 的,如果选择( All)就是所有供应商的,因为(All)公式中是不识别的,所以要用 Vlookup 把(All) 转成* ,*在 sumif 的条件中表示所有。=IF(L$1= 12 And Target.Column = 11 And Len(Target.Value) 1 ThenDim Data_MonthDim ETD_monthDim catogoryWith ThisWorkbook.Worksheets(Water_Fall)Data_M
4、onth = .Cells(Target.Row, 2).ValueETD_month = .Cells(2, Target.Column).Valuecatogory = .Range(A1).ValueEnd WithWith ThisWorkbook.Worksheets(Detail_Data).ListObjects(Table_Monthly_Fcst_Database.accdb).Range.AutoFilterIf Target.Row = Target.Column Then如果双击单元格在对角线,则筛选 Open order ,否则筛选 Fcst.AutoFilter F
5、ield:=1, Criteria1:=Data_Month + 0.AutoFilter Field:=2, Criteria1:=Open PO.AutoFilter Field:=10, Criteria1:=ETD_month.AutoFilter Field:=14, Criteria1:=catogoryElse.AutoFilter Field:=1, Criteria1:=Data_Month.AutoFilter Field:=10, Criteria1:=ETD_month.AutoFilter Field:=14, Criteria1:=catogoryEnd IfEnd WithThisWorkbook.Worksheets(Detail_Data).ActivateThisWorkbook.Worksheets(Detail_Data).Cells(1, 1).SelectEnd IfEnd Sub加完以上代码,当双击 WaterFall 的值,则弹出以下 DetailData 做进一步的分析。