Excel 如何将#datetime转换为本地时区?

Excel 如何将#datetime转换为本地时区?,excel,powerbi,powerquery,m,Excel,Powerbi,Powerquery,M,Power Query中的一列将JavaScript时区转换为UK格式: = #datetime(1970, 1, 1, 0, 0, 0) + #duration(0, 0, 0, [Timestamp]/1000) 但这会产生错误的输出(-1小时差异),可能是由于UTC/GMT+夏季时间差异 我尝试使用以下代码再次转换: = DateTimeZone.ToLocal(#datetime(1970, 1, 1, 0, 0, 0) + #duration(0, 0, 0, [Timestamp]

Power Query中的一列将JavaScript时区转换为UK格式:

= #datetime(1970, 1, 1, 0, 0, 0) + #duration(0, 0, 0, [Timestamp]/1000)
但这会产生错误的输出(-1小时差异),可能是由于UTC/GMT+夏季时间差异

我尝试使用以下代码再次转换:

= DateTimeZone.ToLocal(#datetime(1970, 1, 1, 0, 0, 0) + #duration(0, 0, 0, [Timestamp]/1000))
但我得到了一个错误:

Expression.Error: We cannot convert the value #datetime(2019, 7, 11, 23, 11, 40) to type DateTimeZone.
Details:
    Value=11/07/2019 23:11:40
    Type=Type
我如何正确地做到这一点

编辑:

Timestamp = Text.BetweenDelimiters([ReceivedTime], "(", ")"), type text
其中,
[ReceivedTime]
是以毫秒为单位的JSON日期,如:
/date(156288670000)/

可能有一种更合理的方法来转换JSON日期,而不必求助于
Text
方法

生成的解决方案应在Power BI报告中正确显示-报告应显示用户本地时区中的所有日期时间。

采用
datetimezone
参数,但您只有
datetime
。另一个函数可以将
日期时间
转换为
日期时区
,但它假定输入的
日期时间
位于本地区域,从而将其转换为相反方向

相反,您可以使用UTC时区调用构造函数,然后将其转换为本地时区:

= DateTimeZone.ToLocal(#datetimezone(1970, 1, 1, 0, 0, 0, 0, 0) + #duration(0, 0, 0, [Timestamp]/1000))

在将日期时间传递给DateTimeZone.ToLocal()函数之前,您是否尝试过使用DateTimeZone.From()将日期时间转换为日期时区?谢谢我的专栏现在有一个+01:00。现在让我困惑的是,尽管列中有+1,但它仍然在我的Power BI报告中以UTC时间显示(没有+1)。有什么想法吗?我使用了:
DateTimeZone.ToLocal(DateTimeZone.From(#datetime(1970,1,1,0,0,0)+duration(0,0,0,[Timestamp]/1000))
is[Timestamp]是日期时间吗?为什么它被1000个好问题分开?我已经用更多信息更新了问题。对不起,我不知道如何解决这个问题。如果您在这里没有得到任何回复,也许您可以尝试将此问题发布在Power BI社区论坛上。