Power BI 中不显示当前月的一种方法

01课题背景

报表呈现中有这样一种需求:

“ 限制Power BI视觉对象仅显示已经过去的完整月份的数据,而不显示目前正处于的月份 ”

如果按日显示数据通常问题不大,但按月显示时,当前月的实际值比较参考价值较小,如下图:
file

此图表是2019年某书店书籍的销量,看起来10月份销量有明显下滑,但事实并非如此,这份报告是10月上旬时生成的,仅包含了10月的部分数据,所以有些误导。
在Power BI中可能有多种方法解决此问题,今天我们介绍一种在日期表中创建辅助列的办法。

02月份编号与当前月

我们准备生成一列名为IsCompletedMonth的辅助列,如果是已经发生的月份,我们返回True,否则返回False.
首先,我们的思路是给月份添加一列编号,以识别每个月份——日期表中第一个月编号为1,第二个为2,依次类推…… ,可以使用PQ添加该列,此处我们介绍使用DAX表达式添加

Month Index = RANKX(ALL('Calendar'[年月]),'Calendar'[年月],,ASC)

file

接下来,我们来写出当前月的ID,此处介绍一种使用LOOKUPVALUE函数的方法

CurrentMonthID =
VAR ThisMonthID =
LOOKUPVALUE ( 'Calendar'[Month Index], 'Calendar'[Date], TODAY () )/查询日期表中Date = Today()的行对应的月编号/
RETURN
ThisMonthID

file

03完整月判断与筛选

IsCompletedMonth =
'Calendar'[Month Index] < 'Calendar'[CurrentMonthID]/如果在当前月之前,则返回TRUE,否则返回FALSE /

file

如果在当前月之前的月份,返回TRUE,如果是当前月及之后的月份,则返回FALSE。这样我们就得到了已发生的完整月的标识,可用此列作为筛选或切片。
在报表页面上,用IsCompletedMonth字段来筛选,如下

file

此时,不完整月份已被筛选排除。

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

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


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

Power Pivot工坊