首页 > 解决方案 > Power Bi DAX:除以价值并为每周设置

问题描述

我的 1 月目标值为 20,但该月为 20,我需要每周显示此值。如果一个月有 4 周,我必须将目标除以 4,如果一个月有 5 周,我必须将目标除以 5。就这么简单,我使用折线图和聚集柱形图来显示我的数据,我需要将目标分散到每个月的每个星期。我还需要另一个字段来执行此操作,但我确信我可以复制您的公式并使其适用。

我添加了一个 WeeksinMonth 列,用于计算特定月份的周数,例如一月有 5 周,二月有 4 周。我需要一个 IF 语句,它将目标和价值除以一个月的周数。例如,如果月份有 5 周,则将目标和值除以 5,如果月份有 4 周,则将目标和值除以 4。

我有一个带有周值的日历表,我可以用它来放入划分的目标,以及我在 excel 中制作的所需输出(见附件)。

我将如何处理这件事?

期望的输出

日历表

标签: powerbidaxpowerbi-desktop

解决方案


enter code here您可以在日历表中创建一个额外的列:

WeekMax = 
var stOfMonth = Weeks[Start of Week].[Month]
var stOfYear = Weeks[Start of Week].[year]
return CALCULATE(max(Weeks[Weekinmonth]);FILTER(Weeks;Weeks[Start of Week].[Month] = stOfMonth && Weeks[Start of Week].[Year] = stOfYear))

确保您的模型中有日历和目标日期之间的关系。现在您可以使用该数字除以该周/日期。

您现在可以在目标表中添加一个额外的列:

WeeklyTarget = Targets[Target]/Related(Calendar[WeekMax])

推荐阅读