Power BI筛选时百分比总计变动问题求助
Power BI 切片器筛选后保持百分比与矩阵一致的解决方案
你的公式问题在于只移除了Organisation列的筛选,但没有保留切片器的其他筛选条件,也没有正确锁定当前分组的列总计。以下是针对性的解决方案:
正确DAX度量值(按行是Organisation、列是Mapped Function的矩阵结构)
Total cost % = VAR CurrentRowTotal = SUM('Data 1'[Total cost]) VAR ColumnTotal = CALCULATE( SUM('Data 1'[Total cost]), ALLSELECTED('Data 1'[Organisation]), -- 移除当前行的Organisation筛选,保留切片器其他筛选 VALUES('Data 1'[Mapped Function]) -- 锁定当前列的Mapped Function分组 ) RETURN DIVIDE(CurrentRowTotal, ColumnTotal, 0)
适配不同矩阵结构的调整
如果你的矩阵是行是Mapped Function、列是Organisation,只需调换维度字段:
Total cost % = VAR CurrentRowTotal = SUM('Data 1'[Total cost]) VAR ColumnTotal = CALCULATE( SUM('Data 1'[Total cost]), ALLSELECTED('Data 1'[Mapped Function]), VALUES('Data 1'[Organisation]) ) RETURN DIVIDE(CurrentRowTotal, ColumnTotal, 0)
关键逻辑说明
ALLSELECTED:保留切片器的所有筛选条件,仅移除当前行的维度筛选,确保分母是切片器筛选后的列总计。VALUES:锁定当前列的分组维度,避免跨分组求和。DIVIDE:自动处理除零错误,第三个参数可设置除零时的返回值(示例中为0)。
验证步骤
- 将新度量值添加到矩阵的百分比列,确认切片器筛选后,矩阵内百分比计算正确。
- 用该度量值创建条形图,对比矩阵数据,确保两者百分比完全一致。
内容的提问来源于stack exchange,提问作者emcg
相关产品推荐
相关产品推荐

