欢迎光临散文网 会员登陆 & 注册

PowerBI之DAX神功番外篇17.获取切片器开始和结束日期

2022-09-22 22:35 作者:孙兴华zz  | 我要投稿

网友提问:

我感觉网友问的应该是这个问题:

当我在切片器上选择多个日期时,获取切片器上的最小日期和最大日期

假设我们有一张表

表名:Sheet1

就是一个取最大值和最小值的问题

我们做两个度量值

然后把他们放到矩阵上

在没有切片器的情况下,他们返回的是Sheet1这张表中最大日期和最小日期

现在加个切片器:

当切片器只选择2021年1月2日时,表示我只筛选了2021年1月2日的数据,所以度量值小和大都显示2021年1月2日

当我在切片器上选择2个或以上日期时,就代表我选择的日期是从切片器上我选择日期的最小值到我选择日期的最大值的区间数据。所以最小是1月2日,最大是1月5日

表名:Sheet2

但是如果表变成了Sheet2,用姓名筛选这两个度量值,这时就出错了

为什么会发生这样的情况,因为度量值本身可以筛选,我们现在要获取的是切片器的最小值和最大值,不能让内部筛选影响我们。《DAX神功》第1卷第11回和第3卷第18回,我们讲到一个函数,它可以删除内部筛选,但是保留外部筛选,它就是Allselected函数

《DAX神功》第1卷第11回
《DAX神功》第3卷第18回

当你知道min('Sheet2'[日期])是切片器上选择的最小日期,又理解了《DAX神功》中讲的ALLselected函数,当切片器上选择的最小日期=删除内部筛选保留外部切片器筛选且选择的最小日期时,我们就返回这个日期,否则返回孙兴华(这里不写孙兴华,就返回一个Blank()),  

这里的否则意思是:以下图为列,切片器上选择的是1月2日和1月5日,张三只有1月2日、1月3日、1月4日三天的数据,当我们创建度量值终止日期时,切片器上选的1月5日,在张三里面没有,所以显示为孙兴华。

开始日期和终止日期同理

度量值如下:

最终结果:

Ps: 如果只为了取日期,就不必加孙兴华三个字了。

PowerBI学习顺序:

【1】Access基础篇,学习s01开头的集数,理解表格数据规范和表关系

https://www.bilibili.com/video/BV1tf4y117Sh

【2】PowerBI火力全开,学习函数语法,与应用场景

https://www.bilibili.com/video/BV1qa4y1H7wp

【3】DAX神功,学习DAX函数原理

https://www.bilibili.com/read/readlist/rl442274

【4】PowerBI可视化图表

https://www.bilibili.com/video/BV1W54y1i7dE

https://www.bilibili.com/video/BV1r54y1i75n

PowerBI之DAX神功番外篇17.获取切片器开始和结束日期的评论 (共 条)

分享到微博请遵守国家法律