函数周期表丨信息丨值丨ISINSCOPE

ISINSCOPE函数

ISINSCOPE函数隶属于“信息”类函数,适用于层次结构中的计算。

用途:适用于计算分层占比。

语法

DAX=
ISINSCOPE(<列>)

参数

列:只能是现有列,不能是表达式。

返回结果

TRUE或者FALSE

例子

模拟数据:

这是白茶随机模拟的一份数据,一份销售明细,一份产品表。

将其导入到PowerBI中,模型关系如下:

例子1:对比ISFILTERED函数

代码1:

ISFILTERED =
ISFILTERED ( '产品表'[商品分类] )

代码2:

ISINSCOPE =
ISINSCOPE ( '产品表'[商品分类] )

结果:

从这个图中,我们看不出来什么区别,点击切片器。

可以看得出来,当我们进行筛选时,ISFILTERED函数的总计栏显示TRUE,而ISINSCOPE的结果依然是FALSE。

ISFILTERED函数与ISINSCOPE函数非常的类似,但是后者相对于前者多一层运算判断。

前者在上图中受到筛选器影响,结果产生变动;而后者考虑总计栏未出现[商品分类],因此结果不受影响。

这是二者之间的区别,因此计算层级占比的时候,我们可以使用后者。

例子2:计算层级占比

有时候,我们需要知道每个分类下单个产品的占比,例如下图。

但是每个类别的占比其实我们也是需要知道的,那么这种情况就可以使用ISINSCOPE函数进行计算。

输入代码:

ISINSCOPE例子 =
SWITCH (
    TRUE (),
    ISINSCOPE ( '销售明细'[商品名称] ), DIVIDE ( [销售数量], CALCULATE ( [销售数量], ALLSELECTED ( '销售明细'[商品名称] ) ) ),
    IF (
        ISINSCOPE ( '产品表'[商品分类] ),
        DIVIDE ( [销售数量], CALCULATE ( [销售数量], ALLSELECTED ( '产品表'[商品分类] ) ) ),
        1
    )
)

结果如下:

解释:

首先是利用ISINSCOPE进行第一层级的判断,如果是靠枕、腰带这类的具体商品,则进行占比计算;

然后对层级进行判断,如果是床品、男装这种类别的层级,则进行类别占比计算;

最后,白茶偷懒了,因为考虑到无论怎么筛选,我们所要呈现的总计栏都是100%,因此直接懒得计算了,输入1就OK了。

传送门丨《利用CALCULATE函数求各类占比》

小伙伴们❤GET了么?

白茶会不定期的分享一些函数卡片

(文件在知识星球[PowerBI丨需求圈])

这里是白茶,一个PowerBI的初学者。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fabric丨白茶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值