102_Power Pivot DAX 排名后加上总排名数

2020年2月29日21:23:23 评论 689 1241字阅读4分8秒

焦棚子的文章目录

请在文末下载附件

 

1、背景

每次写rank的时候,有了排名就可以了,排名1,2,3,4,5这样不是很清晰吗?但是中国式报表的老板们说你能不能在排名后面加一个总排名数呢,就像1/5,2/5,3/5,4/5,5/5。谁叫是老板呢,于是就有了报表加工出来后各种组合,比如vlookup。既然都用了dax,为什么不能dax呢。

那就dax写一写咯,

2、数据源(上图)

102_Power Pivot DAX 排名后加上总排名数

3、效果未切片 (再上图)

102_Power Pivot DAX 排名后加上总排名数

4、效果加上切片 请注意R1和R2的变化,很重要。(接着上图)

102_Power Pivot DAX 排名后加上总排名数

5、接下来一如既往的贴上dax咯。

total:=SUM(data[value])

R1:=IF (
    HASONEVALUE ( data[部门] ),
    VAR P =
        SUMMARIZE ( ALL ( 'data' ), 'data'[部门], "P", 'data'[total] )
    RETURN
        RANKX ( P, 'data'[total], 'data'[total], DESC, DENSE ),
    BLANK ()
)
102_Power Pivot DAX 排名后加上总排名数

 

R1/M:=IF (
    HASONEVALUE ( data[部门] ),
    VAR P =
        SUMMARIZE ( ALL ( 'data' ), 'data'[部门], "P", 'data'[total] )
    VAR M =
        CALCULATE ( DISTINCTCOUNT ( data[部门] ), ALL ( data[部门] ) )
    VAR R =
        RANKX ( P, 'data'[total], 'data'[total], DESC, DENSE )
    RETURN
        CONCATENATE ( R, "/" & M ),
    BLANK ()
)

102_Power Pivot DAX 排名后加上总排名数

R2:=IF (
    HASONEVALUE ( data[部门] ),
    VAR P =
        SUMMARIZE ( ALLSELECTED ( 'data' ), 'data'[部门], "P", 'data'[total] )
    RETURN
        RANKX ( P, 'data'[total], 'data'[total], DESC, DENSE ),
    BLANK ()
)

102_Power Pivot DAX 排名后加上总排名数

R2/M:=IF (
    HASONEVALUE ( data[部门] ),
    VAR P =
        SUMMARIZE ( ALLSELECTED ( 'data' ), 'data'[部门], "P", 'data'[total] )
    VAR M =
        CALCULATE ( DISTINCTCOUNT ( data[部门] ), ALLSELECTED ( data[部门] ) )
    VAR R =
        RANKX ( P, 'data'[total], 'data'[total], DESC, DENSE )
    RETURN
        CONCATENATE ( R, "/" & M ),
    BLANK ()
)

102_Power Pivot DAX 排名后加上总排名数

 

6、小结下

请注意观察R1和R2的变化,其实就是all和allselected的变化。

在不同的上下文的筛选下,会得到不同的结果,all则排名始终在所有排名中作排名,allselected则是选择的排名中排名。

关于allselected请移步官方文档:

ALLSELECTED 函数 (DAX)

by 焦棚子

焦棚子的文章目录

 

请点击【立即购买】或者【升级VIP获得案例附件。

隐藏内容需要支付:¥1
立即购买 升级VIP
焦棚子
  • 本文由 发表于 2020年2月29日21:23:23
  • 除非特殊声明,本站文章均为焦棚子原创,转载请务必保留本文链接
140_Power BI&Power Pivot之降维展示同类型比较 Power BI

140_Power BI&Power Pivot之降维展示同类型比较

焦棚子的文章目录 请在文末下载附件 一、背景 最近一段时间比较忙,几乎没有时间更新网站内容,今天刚好周末,更新一个简单的需求。 上效果图: 在我们日常做对比分析的时候,经常几个相同维度(比如省份、区域...
138_Power BI&Power Pivot特殊半累加度量 Power BI

138_Power BI&Power Pivot特殊半累加度量

焦棚子的文章目录 请在文末下载附件 一、背景 半累加度量(semi-additive measure),在DAX建模分析的时候经常遇见;应用场景诸如银行存款、库存等。 接下来看一个比较有意思的案例(结...