将 Hubspot NIX 类整数日期转换为 Google Sheets 人类可读日期

Convert Hubspot NIX-like integer date to Google Sheets human readable date

我已经阅读了多篇关于这个问题的文章,其中 none 正确地回答了我的问题: Convert Unix Epoch Time to Date in Google Sheets | https://webapps.stackexchange.com/questions/108115/how-to-convert-unix-timestamp-to-human-readable | https://code.luasoftware.com/tutorials/google-sheets/google-sheets-convert-unix-epoch-timestamp-to-date/

我有一个来自 Hubspot Sales 的约会,为此我使用 zap 连接到 Google Sheets。从 Hubspot 我得到一个日期 1574842022157,我尝试根据那些文章中的主要思想转换它,这些文章说纪元日期 1500598288 应该格式化为 =1500598288/86400+date(1970,1,1),从而得到一个日期。

当我尝试这样做时(在我的语言环境中将日期函数的更新语法更改为)=1500598288/86400+datum(1970;1;1) 当使用示例日期 1500598288 时,我得到了结果 2017-07-21 ].

使用 Hubspot 日期时 1574842022157 结果完全不同。只需进行第一次除法而不添加 1970 年的传统日期,我就得到了 51804-10-02 的日期。据我了解 Google Sheets 使用 1899 年 11 月 30 日作为其零日期,因此通过在我的日期中使用部分 +datum(1970;1;1) 将我的日期增加超过 70 年是没有意义的这已经太遥远了。

奇怪的是,当我将 1574842022157 的 Hubspot 日期提供给位于 https://www.epochconverter.com/ 的转换器时,它 returns 日期 Wednesday 27 November 2019 09:07:02.157 GMT+01:00,这是正确的。

那么那个转换器在做什么,导致顶部链接到的所有有用文章都丢失了?在转换器页面 https://www.epochconverter.com/ 你可以看到:

Human-readable time Seconds 1 hour 3600 seconds 1 day 86400 seconds 1 week 604800 seconds 1 month (30.44 days) 2629743 seconds 1 year (365.24 days) 31556926 seconds

好奇的是,如果我在 Google Sheet 单元格中将我的日期除以一年中的秒数,我会更接近我的日期,但它仍然不正确。

1574842022157 / 31556926 = 2036-08-17

那么,当分别除以一天中的秒数或一年中的秒数时,是否只是手动找到相应的偏移量,或者这里有一个更容易制作的智能机制在起作用为你工作?

好的,我想我在这里找到了答案http://ramblings.mcpher.com/Home/excelquirks/gassnips/datetimeepoch

对于我的问题,在添加纪元日期 1970-01-01 之前,numeric datetime / the seconds in a day = numeric datetime / 86400 = numeric datetime / (60*60*24) = numeric datetime / 60/60/24 的其他地方给出的公式不正确。

相反,它应该替换为 numeric datetime /1000/60/60/24,当您将 1970-01-01 的纪元日期添加到该计算结果时,您将获得准确的日期。所以回答我的问题的公式是

numeric datetime/1000/60/60/24+DATUM(1970;1;1)

在我的 Google 表格单元格中,公式看起来像 =G3/1000/60/60/24+DATUM(1970;1;1) 其中 G3 = 1574842022157.

问题是你的纪元时间是毫秒而不是秒,因此:

=A1/86400000+DATE(1970; 1; 1)