求Excel PowerPivot累计求和Measure:仅计算透视表可见OLAP数据
解决PowerPivot OLAP模型中仅计算透视表可见单元格累计地址数的DAX Measure
假设你的数据源表名为邮编数据集,包含字段邮编(用于透视行/筛选)和地址数(需要累计的数值),以下是符合OLAP模型约束的正确Measure公式:
行级累计(按地址数从大到小累计)
累计可见地址数 = VAR 筛选后可见邮编 = ALLSELECTED('邮编数据集'[邮编]) VAR 当前行地址数 = MAX('邮编数据集'[地址数]) RETURN SUMX( FILTER( 筛选后可见邮编, CALCULATE(MAX('邮编数据集'[地址数])) >= 当前行地址数 ), CALCULATE(SUM('邮编数据集'[地址数])) )
仅计算可见单元格总和
如果只需统计所有可见邮编的地址数总和,使用更简洁的版本:
可见地址数总和 = CALCULATE(SUM('邮编数据集'[地址数]), ALLSELECTED())
公式说明
ALLSELECTED():核心函数,用于获取透视表当前筛选上下文(切片器、行/列筛选)保留的可见数据范围,直接排除了被切片器过滤掉的地址数≤3000的邮编。- 行级累计版本中,通过
VAR定义筛选后的邮编集合,再用FILTER和SUMX在可见范围内实现按地址数排序的累计计算,确保累计值仅包含透视表中实际显示的单元格数据。
注意事项
- 替换公式中的
邮编数据集为你实际的表名,邮编和地址数为对应字段名。 - 透视表需将
邮编放在行区域,切片器关联邮编或地址数字段以筛选出地址数>3000的项。
内容的提问来源于stack exchange,提问作者NeilC
相关产品推荐
相关产品推荐

