我需要做一个新列,减去两个(前一年的年份),每年都会改变。因此,第一个值必须是:49.443
我已经尝试过了,但是没有用。
"[" & Text.From(Date.Year(DateTime.LocalNow())-1) & "]" -
"[" & Text.From(Date.Year(DateTime.LocalNow())-2) & "]"
谢谢
答案 0 :(得分:0)
不知道您是否仍然需要这个答案,但我想您已经快到了。
DateTime.LocalNow
是正确的,但是您不能使用"["
和&
,因为那样会导致字符串字面量-而您想要的是使用{{ 1}}函数(在Record.Field
语句的行上下文中)。
这是一个包含一些模拟/虚拟数据的表。最后一列(each
)基本上是前一年的值与两年前的值(在撰写本文时分别为2018年和2017年)之间的差额。
尝试类似的东西:
differencia anual
由于您使用的是let
mockData = Table.FromColumns({{11..20}, List.Numbers(40, 10, 2)}, type table [2017 = Int64.Type, 2018 = Int64.Type]),
annualDifference =
let
currentYear = Date.Year(DateTime.LocalNow()),
previousYearHeader = Number.ToText(currentYear - 1),
twoYearsAgoHeader = Number.ToText(currentYear - 2),
differenceColumn = Table.AddColumn(mockData, "diferencia anual", each Record.Field(_, previousYearHeader) - Record.Field(_, twoYearsAgoHeader), type number)
in differenceColumn
in
annualDifference
,所以要减去的列将由计算机的系统时钟确定-我想这就是您想要的。