【发布时间】:2017-06-29 19:27:31
【问题描述】:
我已经搜索过所有答案或代码,我发现的任何答案或代码都相当混乱。
我希望将 excel 中的 =NOW 函数转换为不同的时区
我正在使用
=TEXT(NOW(), "hh:mm:ss AM/PM")
显示我的时区 EST
我想将其转换为另一个时区
例如太平洋标准时间。
有办法吗
=TEXT IF C1 equals PST subtract 3 from A1 <--- the current time
我想要做的是,如果一列中有字母 PST,我想通过从我的 EST 时区减去 3 小时来转换 =NOW。
对不起,如果我的问题有点令人困惑。
我知道我不是唯一一个搜索这个的人,所以一个答案会对我和未来的用户有所帮助,在此先感谢。
更新:
所以我可以使用
=TEXT(NOW()-0.125, "hh:mm:ss AM/PM")
减去 3 小时,但不对 2 个或更多时区进行 if 语句
【问题讨论】:
-
时区比仅仅减去三个小时要复杂得多。您需要应对 DST 转换,如果您想支持来自世界各地的时区,那么您将无法依赖缩写。要获得真正的解决方案,您可能需要编写 VBA 脚本或编写 Excel 插件。你准备好这样做了吗?也可以使用 excel 公式解决方案,但需要导入多张时区规则和复杂的解析公式……如果您可以缩小您的要求,您可能会找到一个可接受的折衷方案,而且涉及较少。
-
...自我注意:为时区编写一个 Excel 插件。 ;)
-
您在六月的时区更可能是 PDT(太平洋夏令时间,UTC–7h),而不是 PST(太平洋标准时间,UTC–8h)。遗憾的是,美国没有一个州在夏季正式遵守标准时间。
标签: excel excel-formula timezone formula formulas