Excel默认不支持Unix格式时间戳,导入数据时不方便。时间戳可以通过以下公式转换成Excel格式的时间:
=(x 8*3600)/86400 70*365 19
其中x是时间戳单元格,8*3600中的8是中国的时区。然后将公式单元格设置为日期和时间格式。转换结果:
这个公式的原理:Excel的日期其实就是序列值。它以1900-1-1为1,序列值每天增加1。Unix时间戳是自1970-1-1 0:00:00 UTC以来经过的秒数。以x为时间戳,可以得到转换公式:
当前时区的X 8*3600时间(秒)
(x 8*3600)/86400换算单位为天。
(x 8*3600)/86400 70*365加70年从1900年到1970年。
(x 8*3600)/86400 70*365闰年多19天
如果你细心的话,会发现从1900年到1970年有17个闰年。考虑到Excel取1900-1-1为1,那么公式最后要加18。为什么要加19?这是Excel的一个bug。bug——1900年也被认为是闰年,所以要多加一天。
另外注意,Excel的工具-选项-重算中有一个1904年的日期系统。如果选中此选项,上述公式应该将70改为66,即
=(x 8*3600)/86400 66*365 19