Power BI Desktop实现静态行标题与计算行值表格求助
实现静态行标题+计算值的Power BI表格
1. 创建静态维度表
首先需要生成包含静态行标题的独立表格:
- 点击Power BI顶部菜单栏的Enter Data,在弹出的窗口中创建一列,命名为
Metric,然后手动输入三行内容:Returns、Sales、Shipped。 - 将这个表格保存为
Metrics Table,无需和你的业务事实表建立关联。
2. 编写DAX度量值
假设你的业务事实表(命名为Fact Table)包含日期列Date,以及对应指标的数值列(比如ReturnsAmount、SalesAmount、ShippedQty),创建以下三个度量值:
Current Year(当年值)
Current Year = VAR CurrentYr = YEAR(TODAY()) RETURN SWITCH( SELECTEDVALUE('Metrics Table'[Metric]), "Returns", CALCULATE(SUM('Fact Table'[ReturnsAmount]), YEAR('Fact Table'[Date]) = CurrentYr), "Sales", CALCULATE(SUM('Fact Table'[SalesAmount]), YEAR('Fact Table'[Date]) = CurrentYr), "Shipped", CALCULATE(SUM('Fact Table'[ShippedQty]), YEAR('Fact Table'[Date]) = CurrentYr) )
Prior Year(去年值)
Prior Year = VAR PriorYr = YEAR(TODAY()) - 1 RETURN SWITCH( SELECTEDVALUE('Metrics Table'[Metric]), "Returns", CALCULATE(SUM('Fact Table'[ReturnsAmount]), YEAR('Fact Table'[Date]) = PriorYr), "Sales", CALCULATE(SUM('Fact Table'[SalesAmount]), YEAR('Fact Table'[Date]) = PriorYr), "Shipped", CALCULATE(SUM('Fact Table'[ShippedQty]), YEAR('Fact Table'[Date]) = PriorYr) )
Year Over Year Change(同比变化)
Year Over Year Change = [Current Year] - [Prior Year]
3. 组装可视化表格
- 在可视化面板中选择Table组件。
- 将
Metrics Table中的Metric字段拖到表格的Rows区域,这就是你的静态行标题列。 - 把刚才创建的三个度量值依次拖到表格的Values区域,自动生成对应计算列。
- 可通过点击度量值的下拉菜单,选择Rename调整列名,或设置Format来统一数值显示样式。
额外提示
如果你的模型有单独的日期维度表,可改用DATEADD函数替代直接判断年份,让计算支持更灵活的日期筛选:
// 示例:用日期表实现去年值计算 Prior Year = SWITCH( SELECTEDVALUE('Metrics Table'[Metric]), "Returns", CALCULATE(SUM('Fact Table'[ReturnsAmount]), DATEADD('Date Table'[Date], -1, YEAR)), "Sales", CALCULATE(SUM('Fact Table'[SalesAmount]), DATEADD('Date Table'[Date], -1, YEAR)), "Shipped", CALCULATE(SUM('Fact Table'[ShippedQty]), DATEADD('Date Table'[Date], -1, YEAR)) )
内容的提问来源于stack exchange,提问作者Mike
相关产品推荐
相关产品推荐

