【PowerPivot技巧】使用切片器实现报告的参数控制

*干货内容。欢迎参加文章后面的答题赢奖品活动:)

我们先看完成后的效果:

【PowerPivot技巧】使用切片器实现报告的参数控制_第1张图片

在企业的报告里,有些参数是需要设置为灵活调整的。比如报告显示的货币种类、假定的百分比等。在传统的excel报表里,我们大多数情况是通过设置数据有效性下拉菜单,然后在公式里通过IF函数多层嵌套引用来实现这样的效果:

【PowerPivot技巧】使用切片器实现报告的参数控制_第2张图片

​公式大概是这样的:

=IF(C5="人民币",GETPIVOTDATA("销售额",$J$14,"行标签","服装"),IF(C5="美元",GETPIVOTDATA("销售额",$J$14,"行标签","服装")/6.5,GETPIVOTDATA("销售额",$J$14,"行标签","服装")))

这还只是人民币和美元两种货币的情况… 但如果我们的参数比较多,报告的制作和维护就非常麻烦了。

今天我们给大家分享通过PowerPivot模型加切片器的方法实现报告的动态参数控制。开始之前,我们先熟悉一下演示模型:

【PowerPivot技巧】使用切片器实现报告的参数控制_第3张图片

​通过这个演示模型,我们能生成如下透视表报告:

【PowerPivot技巧】使用切片器实现报告的参数控制_第4张图片

​接下来我们在报告里准备一张参数表,见下图,包含货币种类和汇率信息。

【PowerPivot技巧】使用切片器实现报告的参数控制_第5张图片

​我们把这张参数表以链接表的形式导入到模型中,链接表的好处是报告的使用者可以随时更新汇率,PowerPivot模型会自动更新返回指定的结果。

【PowerPivot技巧】使用切片器实现报告的参数控制_第6张图片

*参数表不需要和模型中的表格建立关系。

把汇率表里的货币以切片器的形式放到报告里

【PowerPivot技巧】使用切片器实现报告的参数控制_第7张图片

​最终报告希望实现的效果是当用户点击切片器选择一个货币时,报告里的数字对应显示相应的金额。由于平均订单金额=销售额/订单数量,所以我们只要实现销售额跟着切片器选择而变化就能解决问题了。先来看看销售额度量值是怎么写的:

销售额:=SUM([金额])

我们只要修改这个公式的写法,让它随着我们切片器的选择而变化就行了。

重点终于来了,PowerPivot模型中参数表的主要函数HASONEVALUE,我们可以将它理解为“判断某字段是否为一个值”的意思。

公式HASONEVALUE('汇率'[货币])的意思是说如果汇率表里的货币列只有一个值(也就是用户点击切片器选择一个值),则是True,否则是False。通过这个公式我们就能判断切片器是否被用户选择了,如果选择了(True)我们就通过另外一个函数Values把对应的汇率提取出来进行计算。完整公式如下:

销售额:=IF(HASONEVALUE('汇率'[货币]),SUM([金额])/VALUES('汇率'[汇率]),SUM('销售记录'[金额]))

最终结果:

【PowerPivot技巧】使用切片器实现报告的参数控制_第8张图片

​不仅如此,报告的使用者还可以通过链接表随时修改货币及汇率。PowerPivot模型会自动计算所有相关字段并呈现最新结果。

当然,这只是参数表的简单应用案例,我们还可以通过参数表控制产品折扣信息、排名信息等等我们希望在报告里体现的变量,甚至使用参数表来控制报告的排序方式。只有想不到,没有做不到…

提问时间到,在最终报告上面的蓝色单元格里显示的货币单位也是跟着切片器变化的,大家考虑一下应该如何实现呢?


想深入学习Excel PowerPivot建模分析,欢迎登录网易云课堂试听学习我们的“从Excel到Power BI数据分析可视化”系列课程。或者关注我们的公众号(PowerPivot工坊)后猛戳”在线学习”

【PowerPivot技巧】使用切片器实现报告的参数控制_第9张图片

​长按下方二维码关注“Power Pivot工坊”获取更多微软Power BI、Power Pivot相关文章、资讯。欢迎小伙伴儿们转发分享~

【PowerPivot技巧】使用切片器实现报告的参数控制_第10张图片

*PowerPivot工坊原创文章,欢迎转载,请注明出处



你可能感兴趣的:(【PowerPivot技巧】使用切片器实现报告的参数控制)