首页 > 解决方案 > DAX - YTD,列上有年份

问题描述

任何人都可以建议如何在 DAX 中编写 YTD 销售公式,该公式可用于(例如在 Excel 数据透视表中)与列上的年份,以比较过去几年的 YTD 销售额。

具体来说,我的困难在于确定“截至日期”。Date如果我在不删除过滤器的情况下引用该表,那么类似的LASTNONBLANK('Date'[Date],[SalesAmount])内容将为我12/31提供上一年列的相应年份。如果我通过删除日期过滤器,ALL()我将获得最后一个可用日期,从而忽略用户可能添加的过滤器/切片器。

我对 DAX 相当陌生,并希望这是一个已经有人解决的常见场景。但我发现的只是年初至今与上一年比较的解决方案,而不是多年以来的年初至今“趋势”。

任何反馈都非常感谢!

弗拉德

标签: dax

解决方案


您需要为我提供更多详细信息才能具体说明,但我可以猜测您的数据集。

假设:

table1 with Date, Period, Year and SalesAmount

table2 with Period and Year

No relationships.

你的措施可能是这样的:

MAX_PERIOD = CALCULATE(MAX(table2[Period]))

MAX_YEAR = CALCULATE(MAX(table2[Year]))

YTD Sales = Calculate(Sum([SalesAmount]), FILTER(table1, table1[Period] <= [MAX_PERIOD] && table2[Year] = [MAX_YEAR]))

您的数据透视表/矩阵可能如下所示:

_____________________________
|Filters:    |Columns:      |
|            |table2[Period]|
|            |              |
|____________|______________|
|Rows:       |Values:       |
|table2[Year]|[YTD Sales]   |
_____________________________

推荐阅读