我已经在Power BI中为月份和年份创建了两个切片器。它们采用月和年的值,并作为回报生成日期。
例如。月份-五月和年份-2019在a度量公式的帮助下生成01/05/2019:
MyFilterDate = DATE(SELECTEDVALUE(ListoY[Year]),SELECTEDVALUE(ListoM[Month],0),"01")
我想用表中一列中已有的日期减去这个日期。
当我尝试通过编写DAX从现有列中减去度量值时遇到一个问题。
SUBVALNEW = DATEDIFF([MyFilterDate],Table[Date],DAY)
但是当我尝试这样做时,结果不正确。实际上,当我尝试检查数据模型中[MyFilterDate]的值时,它与度量中计算出的值不同。 (相反,它似乎在Table [Date]中显示了日期)
是否可以从列中的日期中减去动态选择的日期?
任何帮助将不胜感激。
答案 0 :(得分:1)
我了解您的思维方式是什么,但是power bi的工作方式却有所不同。动态度量不能与计算列一起使用。这样做时,未设置度量值。
解决方法是创建日期表:
Date = CALENDAR(MIN(CalendarWeek[Date]);MAX(CalendarWeek[Date]))
请勿将其连接到模型。在这里,您可以制作2个切片器(基于日期表)。一个设置为月,另一个设置为年。
下一步是调整MyFilterDate
MyFilterDate = DATE(SELECTEDVALUE('Date'[Date].[Year]);SELECTEDVALUE('Date'[Date].[MonthNo]);"01")
使SUBVALNEW成为度量(不能为列,因为它是动态的!)
SUBVALNEW = DATEDIFF([MyFilterDate];SELECTEDVALUE(CalendarWeek[Date]) ;DAY)
将测量仪关联到您的视觉效果,请参见下面的最终结果)