Power BI中如何让日期切片器仅显示销售数据覆盖的年月?
解决方案
方法1:给日历表添加标记列,筛选有销售的年月
- 切换到Power BI的建模选项卡,选中你的日历表。
- 新建计算列,输入DAX公式:
这个列会标记日历表中每个年月是否有对应的销售数据。HasSales = NOT(ISBLANK(CALCULATE(COUNTROWS('销售事实表')))) - 选中你的MonthYear切片器,在右侧筛选器面板中,添加日历表的
HasSales列,设置筛选条件为“等于True”。此时切片器就只会显示存在销售数据的年月。
方法2:创建仅包含有效年月的计算表
如果不想修改原日历表,可以直接生成一个只包含有销售数据的年月的表:
- 切换到建模选项卡,点击新建表,输入DAX公式:
有效年月表 = SUMMARIZE( FILTER('销售事实表', NOT(ISBLANK('销售事实表'[SalesDate]))), '日历表'[MonthYear] ) - 用这个新表的
MonthYear字段创建切片器,天然就只会显示有销售记录的年月,无需额外筛选。
方法3:调整切片器的视觉对象级筛选
如果之前筛选SalesDate失败,可能是选错了筛选的表:
- 选中MonthYear切片器,在右侧筛选器面板中,点击添加筛选器,选择销售事实表下的
SalesDate字段。 - 设置筛选条件为“非空”,确认关联关系是日历表(一)到销售事实表(多)的单向关联,这样筛选会自动生效,切片器只显示有对应销售数据的年月。
内容的提问来源于stack exchange,提问作者Douglas Cabral
相关产品推荐
相关产品推荐

