Power BI仅忽略单列切片器值、钻取时保留客户筛选的度量值问题
解决方法
你的度量值本身仅清除了日期维度的指定列筛选,理论上不会影响钻取带来的Client ID筛选上下文,之所以显示全部客户,是因为DAX会为所有存在的Client ID计算度量值,无符合条件的会话时也会返回0,导致无关客户出现在表格中。可以通过两种方式解决:
方案1:修改度量值(推荐)
使用REMOVEFILTERS替代ALL(二者功能一致,REMOVEFILTERS语义更清晰),同时新增空值判断,让无历史会话的客户返回空值,Power BI表格默认会隐藏空值行,自然仅保留目标客户:
All Client Eligible Sessions IAPT = VAR EligibleCount = CALCULATE( DISTINCTCOUNT('All Sessions IAPT'[revreviewID]), 'All Sessions IAPT'[revsupportcategory]<>BLANK(), REMOVEFILTERS('Date'[Month],'Date'[Financial Quarter],'Date'[Financial Year]) ) RETURN IF(EligibleCount > 0, EligibleCount, BLANK())
All Client Sessions IAPT = VAR SessionCount = CALCULATE( DISTINCTCOUNT('All Sessions IAPT'[revreviewID]), REMOVEFILTERS('Date'[Financial Year],'Date'[Month],'Date'[Financial Quarter]) ) RETURN IF(SessionCount > 0, SessionCount, BLANK())
修改后既可以统计每个客户的全部历史会话,也不会显示无关的Client ID。
方案2:表格视觉对象添加筛选
如果不需要修改原有度量值,直接在钻取后的表格上添加筛选条件即可:
- 筛选字段选择你用到的两个度量值
All Client Eligible Sessions IAPT或All Client Sessions IAPT - 筛选规则设置为大于0
该方案同样可以过滤掉无会话数据的客户,仅展示你钻取筛选出的3个目标客户。
内容的提问来源于stack exchange,提问作者mihaita_baro
相关产品推荐
相关产品推荐

