Power Pivot获取上年求和求助:非日期格式年份的DAX公式调试
解决方案
1. 当年费用计算
年份切片器会自动筛选选中的年份,直接求和即可:
当年费用 = SUM('Table'[ActualFees])
2. 上年费用计算
核心是先获取切片器选中的年份,再筛选对应上年的费用,使用以下DAX公式:
上年费用 = VAR SelectedYear = SELECTEDVALUE('Table'[Year]) RETURN CALCULATE( SUM('Table'[ActualFees]), 'Table'[Year] = SelectedYear - 1, ALLSELECTED('Table'[Year]) )
补充说明:
如果切片器允许选择多个年份,SELECTEDVALUE会返回空白,此时可以改用MAX('Table'[Year])获取选中年份中的最大值来计算上年:
上年费用 = VAR SelectedYear = MAX('Table'[Year]) RETURN CALCULATE( SUM('Table'[ActualFees]), 'Table'[Year] = SelectedYear - 1, ALLSELECTED('Table'[Year]) )
原有公式问题分析
- 所有公式里的
Table[Year] = Table[Year]-1是行上下文内的自比较,每行年份等于自身减1永远不成立,无法筛选出任何数据。 - 没有正确获取切片器选中的年份值,而是错误地在行上下文里做无效计算。
内容的提问来源于stack exchange,提问作者Atila D. Grings
相关产品推荐
相关产品推荐

