zoukankan      html  css  js  c++  java
  • 在Excel中转换时间戳(timeStamp)

    image

    =TEXT((A2/1000+8*3600)/86400+70*365+19,"yyyy-mm-dd hh:mm:ss.000")

    =((B2-70*365-19)*86400-8*3600)*1000

    什么是时间戳?
    Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式。

    定义为从格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总毫秒数。

    image

    Excel里日期、时间字段,实际上是序列值,它以1900-1-0为0,每过一天序列值加1,而时间是小数。

    (A2/1000+8*3600)/86400+70*365+19 的理解

    A2/1000:由毫秒转换秒,注意:如果timeStmap是秒,就不用除1000了。

    8*3600:由GMT 0时区转到GMT +8时区

    86400:由秒转到天(=24*60*60)

    70*365:70年的差值(timeStamp与Excel计算起点差异:1900年到1970年)

    19:1900年到1970年共是17个闰年,考虑到Excel将1900-1-1当作1,那么公式最后应该加18才对,为什么要加19?这是Excel中的一个bug——1900年也被当作闰年,因此应当再多加一天。另外要注意,在Excel的工具->选项中,有个1904年日期系统,如果勾选这个选项,上面的公式应当将70改为66。

    在线转换工具:https://tool.lu/timestamp

    Tty725 说:
    欢迎转载,但请注明内容的来源或URL;
    [转]”篇章,必须保留原始来源且勿添加本blog指向。
  • 相关阅读:
    Delphi操作Excel大全
    一名Delphi程序员的开发习惯
    七维互联(www.7wei.com)
    Android开发数据库三层应用-DataSnap
    如何破解excel宏的密码
    让Delphi的DataSnap发挥最大效率
    使用 TRegistry 类[1]: 显示各主键下的项
    ini 文件操作记要(1): 使用 TIniFile
    Delphi经验总结(1)
    Delphi经验总结(2)
  • 原文地址:https://www.cnblogs.com/Tty725/p/11593334.html
Copyright © 2011-2022 走看看