Power BI矩阵表如何仅保留总计Rate值隐藏各分项Rate值
Power BI矩阵隐藏分项Rate、仅保留总计Rate的实现方案
不要用自带的Exclude功能做这个操作——Exclude是维度级的过滤规则,触发后会直接把对应维度成员的所有值都从视觉对象里移除,所以操作后整列被删掉是正常的,它本身就不支持单元格级别的显示控制。
正确实现方式是通过DAX自定义度量值控制不同层级上下文的显示结果,步骤如下:
- 移除当前矩阵值区域里直接拖入的原始Rate字段
- 新建度量值,核心逻辑是判断当前计算上下文是否处于RATING维度的明细层级,如果是就返回空值,只有在总计层级才返回Rate的计算结果,参考代码:
Matrix_Rate_Display = VAR ActualRate = [你的原有Rate度量值] // 替换成你实际计算Rate的逻辑,例如DIVIDE(SUM(TableName[Amount_Num]), SUM(TableName[Amount_Den])) RETURN IF ( ISINSCOPE ( TableName[RATING] ), // 替换成你实际使用的RATING字段对应的表名和字段名 BLANK(), ActualRate )
- 把新建的
Matrix_Rate_Display度量值拖入矩阵值区域,替换原来的Rate字段位置即可
补充说明:
- 如果你用的是较早版本的Power BI Desktop,没有
ISINSCOPE函数,可以替换成HASONEVALUE(TableName[RATING])做判断,单层级维度下效果完全一致;如果是多层级的列/行维度,ISINSCOPE的层级判断精度更高,优先用前者。 - 这个方案不会影响Amount字段在各RATING分项下的正常显示,也不会修改总计Rate的原有计算逻辑,只是把明细层级的Rate单元格做了空值隐藏,和你直接删除明细单元格值的视觉效果完全一致。
内容的提问来源于stack exchange,提问作者Deeriss
相关产品推荐
相关产品推荐

