制造业报表死结:一条流水有两个日期,如何在一张表里同时看齐“接单”与“发货”双口径业绩?

你可能会遇到这样的场景,老板把你叫到办公室:“给我拉一张3月份的日报,最左边是1到31号,右边给我放两列数据:这一天咱们新接了多少单?同一天咱们实际发了多少货?”

在传统Excel里,这简直是个灾难。因为业务流水表里同时有“下单日期”和“发货日期”两个字段,而透视表只能拉一个日期轴。你如果用“下单日期”做轴,发货数据就全乱了;用“发货日期”做轴,接单数据又对不上。传统财务只能苦逼地拉出两张透视表,再用 VLOOKUP 在旁边硬拼,不仅每天更新极度耗时,数据一变动就容易出错。

今天咱们的excel bi 财务数据建模实战案例就来说一说这个场景的高效解决方案。

本期案例解决的是制造业和商贸企业里最经典的一个痛点:一表多期(一个流水表里有多个日期字段)引发的统计冲突

一、把业务流水与日历表装进数据模型大脑

在动手连线建模前,我们需要把两个核心表格装进 Power Pivot(我们的数据模型大脑):

1. 业务流水表(t_Sales)的装载:

我们的原始流水数据通常就在 Excel 的单元格区域。只需选中数据,按下 Ctrl + T 将其转换为“超级表”并命名为 t_Sales。接着,点击 Excel 顶部菜单的【Power Pivot】->【添加到数据模型】,一键就能把它送进高级数据仓库。

图片[1]- 制造业报表死结:一条流水有两个日期,如何在一张表里同时看齐“接单”与“发货”双口径业绩?-小微之家 | 汪斌带你开公司 | 老汪洞察

2. 标准日历表(t_Date)的动态生成:

真正的实战中,千万别去 Excel 里手动拉日期!我们采用更高级的 Power Query M函数来自动生成。

图片[2]- 制造业报表死结:一条流水有两个日期,如何在一张表里同时看齐“接单”与“发货”双口径业绩?-小微之家 | 汪斌带你开公司 | 老汪洞察

打开【数据】->【获取数据】->【空查询】,进入【高级编辑器】,贴入一段标准生成连续日期的 M 代码(这段代码网上极其常见,能自动生成包含年、半年、季度、月、日、星期几等多维度的完整日历)如下图。

图片[3]- 制造业报表死结:一条流水有两个日期,如何在一张表里同时看齐“接单”与“发货”双口径业绩?-小微之家 | 汪斌带你开公司 | 老汪洞察

写好后命名为 t_Date,在“关闭并上载至”时,勾选【仅创建连接】并务必勾选【将此数据添加到数据模型】。

这样一来,一静(业务表)一动(动态日历)两张表就齐聚 Power Pivot 窗口了。

二、 数据模型大脑内拉线搭桥(建模):主干道与备用道

数据进来了,接下来就是最关键的模型搭建。进入 Power Pivot 的“关系视图”,我们用鼠标把日历表 t_Date 的 [日期] 拖拽连到流水表 t_Sales 的 [下单日期] 上,系统会生成一条实线(主干道)。接着,再次把 [日期] 连到 [发货日期] 上。注意!由于底层规则限制,两表间只能有一条激活的关系,所以这根线会自动变成虚线(备用道)。平时它处于休眠状态,绝对不会干扰实线的默认计算(也就是接单口径)。

图片[4]- 制造业报表死结:一条流水有两个日期,如何在一张表里同时看齐“接单”与“发货”双口径业绩?-小微之家 | 汪斌带你开公司 | 老汪洞察

三、 DAX 魔法开关:强行唤醒发货口径

怎么让那根“休眠的虚线”起作用?这就需要祭出数据分析里最经典的魔法开关函数:USERELATIONSHIP。我们在模型里新建两个度量值(可以理解为按需触发的智能计算器):

1. 基础接单计算器(默认走实线):

下单总金额 = SUM(‘t_Sales'[订单金额])

2. 魔法发货计算器(强行唤醒虚线):

发货总金额 = CALCULATE([下单总金额], USERELATIONSHIP(‘t_Date'[日期], ‘t_Sales'[发货日期]))

💡 代码大白话翻译: CALCULATE 就像是在对系统下达强制命令:“系统你听好,这次算钱请暂时切断默认的实线,强行拨动开关,给我顺着连着‘发货日期’的那根虚线去查数据!” CALCULATE函数里面的[下单总金额]这个值就算,上面写的那个度量值,等于有条件(即发货)引用他计算出来的数据。

四、 见证奇迹:老板桌上的双口径透视表

底层模型和 DAX 计算器都准备就绪,最后一步就是把它变成老板能看得懂、能随便点选的动态报表了。

回到 Excel 普通界面,点击【插入】->【数据透视表】-> 选择【从数据模型】
在右侧的字段列表里:

  1. ①把 t_Date(我们的统一日历户口本)里的 [日期] 拖到“行”区域。
  2. ②把 t_Sales 表里带 fx 图标的 [下单总金额和 [发货总金额] 这两个度量值,统统拖到**“值”**区域。

🎯 最终战果:

你会惊奇地发现,在透视表最左侧的某一天(比如 3月5号)那一行,系统既能顺着实线正确汇总出当天的“接单业绩”,又能顺着被强行唤醒的虚线汇总出当天的“发货业绩”。

两个完全不同口径的数据,在同一个时间轴上完美对齐,互不干扰!从此告别苦逼的拉两张透视表再用 VLOOKUP 硬拼的“手工缝合怪”时代,月底对账只需一键刷新!

五、从小痛点窥见 Excel BI 的工业级力量

回顾刚才的过程:我们用 Power Query 动态装载了日历表(ETL 数据准备),在 Power Pivot 里用实虚线构建了主备用关联(数据建模),用 DAX 函数写出了魔法开关(业务逻辑计算),最后通过数据透视表一键呈现(可视化展现)。

解决“一表多期”的双口径统计,仅仅是一个微型的实战案例。但它却让我们得以一窥 Excel BI 这套现代化方案的强大之处。我们不再是在一张巨大的二维表格里写满卡顿的 VLOOKUP,而是真正在 Excel 底层搭建了一个自动运转的“微型数据仓库”。面对海量数据,只要底层逻辑建好,前台报表永远是一键刷新,瞬间就绪!强不强?

 制造业报表死结:一条流水有两个日期,如何在一张表里同时看齐“接单”与“发货”双口径业绩?-小微之家 | 汪斌带你开公司 | 老汪洞察
 制造业报表死结:一条流水有两个日期,如何在一张表里同时看齐“接单”与“发货”双口径业绩?
此内容为付费资源,请付费后查看
会员专属资源
您暂无购买权限,请先开通会员
付费资源
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容