乐于分享
好东西不私藏

费用分摊还在用Excel算?PowerBI三步轻松搞定

费用分摊还在用Excel算?PowerBI三步轻松搞定
费用分摊是企业数据分析中最常见的需求之一,它广泛应用于财务核算、成本管理、绩效考核等多个领域。无论是将营销费用按销售额分摊到各产品线,还是将管理费用按人头分摊到各部门,亦或是将物流成本按订单量分摊到各区域,都需要用到合理准确的分摊方法。
今天,我们就用一个简洁的案例,手把手教你如何用PowerBI轻松解决费用分摊问题。

假设有两张表,一个是每日销售表,一个是每月发生的费用,模拟数据如下:

需要将每月的费用按当月销售额的占比,分摊给每个产品、或者分摊到业务员/部门,应该怎么做呢?其中业务员和部门是层级关系。

同样按照之前做目标实际对比的思路,按下面三个步骤进行。

1、根据分析目的完善维度表

由于要按照各个维度来分摊,所以先根据现有的表来生成维度表。

(1)产品维度表

产品表 = VALUES('销售表'[产品名称])

(2)业务员维度表

由于业务员和部门是层级关系,可以用SUMMARIZE一次性从销售表中提取两个字段:

业务员表 =
SUMMARIZE(
    '销售表',
    '销售表'[销售部门],
    '销售表'[业务员]
)

这样就提取除了全部的业务员以及所属的部门。

(3)日期维度表

关于日期表不再赘述,你可以参考这两篇文章自行创建:

玩PowerBI必备的日期表制作方式汇总

分享一个更实用的Power BI日期表

2、建立数据模型

通过上面的准备工作,现在有5张表,原有的销售表、费用表,以及新建的产品表、业务员表和日期表。

这5张表可以这样建立关系:

三个维度表根据需要,分别与不同的事实表建立一对多的单向关系。

3、建立度量值并展现分析结果

有了上面的模型,下面就可以写度量值来计算分摊金额。

为了下面度量值更简洁的书写,先写两个基础度量值:

销售额合计 = SUM('销售表'[销售额])

费用合计 = SUM('费用表'[费用额])

为了得到分摊额,首先需要计算出分摊比例,度量值可以这样写:

分摊比例 =
DIVIDE(
    [销售额合计],
    CALCULATE([销售额合计],ALLEXCEPT('销售表','日期表'[年度月份]))
)
分母只保留年度月份的筛选,是为了计算出每月的销售额合计,其他上下文的销售额除以该月的合计销售额,就是分摊比例。

然后分摊比例乘以当月的费用合计,就是应分摊的费用额:

分摊金额 = [费用合计]*[分摊比例]

用矩阵展示如下,将费用分摊到每个产品:

如果想将费用分摊到业务员和部门,同样是这些度量值,只需要调整上下文,将产品换成业务员就可以了:

这样就实现了任一维度的费用分摊,并没有用到复杂的DAX公式。

通过这个例子,不仅是学习如何解决分摊问题,还可以进一步的理解度量值的逻辑,它是一个动态的值,通过上下文的切换动态返回当前上下的结果,当然也不要忘了,度量值背后的数据模型,才是数据分析的灵魂。


ABI智能助手不仅能帮你写DAX、建模型,它还能帮你分析异常指标、写各种分析报告,甚至做可视化,如果你也想拥有这个强大的AI超级助理,欢迎和我联系(备注:ABI智能助手)

ABI智能助手不断更新迭代,现在越来越强大,PowerBI星球会员,可以直接在知识星球中获取免费使用哦。

加入或续费PowerBI星球社群,不仅能解锁ABI智能助手ABI Chat,还能获取海量 PowerBI 教程、AI应用、专属答疑等优质资源,快速提升PowerBI分析技能~