PPT学习

工坊实验室 | ISINSCOPE函数的两个应用场景

2019-12-03  本文已影响0人  PowerPivot工坊

微软官方文档中关于ISINSCOPE函数的介绍:
当指定的列是级别层次结构中的级别时,返回True

参考网址:
https://docs.microsoft.com/zh-cn/dax/isinscope-function-dax

对于官方文档中的解释,如果友友们有兴趣可以研究下,我们今天通过两个应用场景来了解一下ISINSCOPE函数。

01数据准备

准备如下数据:

以上数据为每种产品(Product)各个颜色系列(Color)的销售额。

02场景1 – 识别总计行

定义度量值销售额

Sales =

SUM ( Sale[SalesAmount])

定义度量值平均销售额

AverageSales =

AVERAGE ( Sale[SalesAmount])

在表格中按颜色系列呈现以上度量值

如果希望自定义某个度量值在总计行的呈现结果,如总计不显示等,可以使用ISINSCOPE函数,例如以下的表达式定义总计行不显示

AveSales_adjust =

IF ( ISINSCOPE( 'Sale'[Color] ), AVERAGE( Sale[SalesAmount] ), BLANK () )

结果如下:

03场景2 – 类别内计算排名

如果我们想得到销售前三的颜色系列,可以通过视觉级筛选器中的TopN筛选实现,

下面我们来看一下,如果将产品字段添加到矩阵中会发生什么。

以上结果并非按照每个产品计算产品类别内部排名前三的颜色系列,而是每个产品计算总销量排名前三的产品系列,我们可以通过ISINSCOPE函数实现在产品类别内容计算排名,如下:

SalesRankInscope =

IF (

ISINSCOPE ( Sale[Product] ),//在同一产品类别内部

RANKX (

CALCULATETABLE( VALUES ( Sale[Color]), ALLSELECTED ( Sale[Color]) ),//读取产品类别内部所有颜色

[Sales]

)

)

在报表视图呈现结果如下:

04总结

今天我们一起了解了ISINSCOPE函数的两个应用场景:识别总计行和计算某一类别内部的子类别的排名,此函数理解起来有一定难度,宗琪没有对此函数形成系统的理解,希望大家可以通过今天的分享了解到此函数的两种应用场景,友友们如有更深入地见解,欢迎留言交流哦~

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


延伸阅读:

工坊实验室 | CALCULATE的嵌套使用

工坊实验室之桑基图排序

工坊实验室之失灵的筛选

工坊实验室之使用切片器切换度量值

工坊实验室之CLOSINGBALANCE家族


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

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

上一篇下一篇

猜你喜欢

热点阅读