如何在 excel 中将数字转换为日期时间格式(我在 R 中实现了等效解决方案)

How to convert number into date-time format in excel ( i have equivalent solution achieved in R)

参考上面的屏幕截图,我正在尝试从新加坡证券交易所抓取数据,其中的 Web 内容是通过 API 调用 returning json 动态加载的,示例 here

我对 json 给出的日期有一些疑问。例如,1575491760000 应该是 2019-12-04 20:36:00GMT

经过反复试验,我找到了使用 R 的解决方案:

as.POSIXct(1575491760000/1000, origin="1970-01-01", tz = 'GMT')  
# not sure why need to divide the number by 1000 here but i guess this is the way to make it work

上面的代码在 R 中执行 return "2019-12-04 20:36:00 GMT"

但是,我的问题是 Excel 中的上述转换有解决方案吗? 我尝试了几种不同的方法,但 none可以处理这么长的数据场景(日期+时间格式)。如果有人能提供具体的解决方案,我们将不胜感激!

这是 Excel 的等价物。

=DATE(1970,1,1) + 1575491760000/(1000*60*60*24)
# 12/4/19 20:36:00  with cell formatting set to   m/d/yy h:mm:ss

自 1/1/1970 以来,Unix 时间每毫秒递增 1。 Excel 自 1/1/1900 以来,日期时间每天递增 1。

所以要从 UNIX 时间转换为 excel,除以一天中的毫秒数 (1000*60*60*24) 并添加到日期 1/1/70 (25569 Excel.)