【问题标题】:Excel - Convert JavaScript/Unix timestamp to dateExcel - 将 JavaScript/Unix 时间戳转换为日期
【发布时间】:2020-03-26 03:39:17
【问题描述】:

我想知道如何在 Excel 中将时间戳转换为日期。

JavaScript 时间戳:

1486812409161

Unix 时间戳

1486812409

哪些 Excel 函数/公式可以转换为:

2/11/2017 11:26 AM(或任何人类可读的日期)

我确实看到了this answer,但我无法让它为我工作(在 Mac OS X / Excel 2011 上)。

当我创建一个新单元格并将其值设置为以下公式时:

= (MsValueCellReference / 86400000) + DATE(1970,1,1)

结果是:41315.47696

【问题讨论】:

  • 愚蠢的问题,但是...您是否将该单元格格式化为日期?
  • 我相信 Excel 将其日期存储为自 1900 年 1 月 1 日以来的天数。
  • 好吧,我会被诅咒的。格式化为日期有效。如果你写一个正式的答案,我会接受。
  • @TimBiegeleisen 是的,除非您在文件>选项>高级>计算此工作簿时中勾选“使用 1904 日期系统”。根据我的经验,它可以解决你改变它的任何问题,同时新打破其他一切,最终不值得麻烦。 :P
  • @underscore_d ... 或者 Excel 在 1900 年之后的第一次飞跃中跳过了一天(我认为)。

标签: excel


【解决方案1】:

我正在使用当前公式=(<javascriptTimestamp>)/(1000*60*60*24)+25569,然后使用dd/mm/yyyy hh:mm:ss 格式化单元格。

为了解释公式中的术语,Javascript时间戳有毫秒,占1000。一天有60*60*24秒。

最后,Excel 日期从 1900 年 1 月 1 日开始,Javascript 从 1970 年 1 月 1 日开始。从 1900 年 1 月 1 日到 1970 年 1 月 1 日有 25569 天。

【讨论】:

    【解决方案2】:

    正如您所注意到的,Excel 非常乐意在日期和数字之间进行相互转换。然而,事实上,它不能总是正确地猜出你想看哪两个。

    因此,为确保将值呈现为日期,您需要打开“设置单元格格式”对话框,转到第一个选项卡“数字”,并将单元格的格式类别设置为日期类型之一。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-01
      • 2018-08-03
      • 2020-10-19
      • 2020-12-23
      • 2016-04-24
      • 2012-07-04
      相关资源
      最近更新 更多