当前位置: 首页 > 图文教程 > 工具软件 > 办公软件 > Excel中导入Unix格式时间戳小技巧

办公软件
Excel:创建常用文档菜单
Excel:快速录入小数
Excel 2000:用Delphi自动生成报表
Excel:记录单帮你准确查看实用表格数据
Excel 2003:轻松自制学生练习测试卷
Excel:精彩实例推荐
Excel:让你的图表更具魅力
教程/办公软件 利用EXCEL做成绩快速统计
利用EXCEL做成绩快速统计—要“详”要“略”随心所欲
Excel:快速输入数据
只有想不到!原来Excel图表还可以这么做!
Excel:多班成绩快速统计
Excel也会“作假”:真正的实现四舍五入
教程/办公软件 EXCEL制作图表的小技巧
教程/办公软件 Excel真正的实现四舍五入
Excel:弹指之间输入特定文本
Excel与IE手牵手,互联网上数据随时随地查
教程/办公软件 让成绩录入更智能--Excel智能成绩录入单
如何用Excel服务器提取“上月”数据
Excel:人民币小写金额转换大写技巧两则

办公软件 中的 Excel中导入Unix格式时间戳小技巧


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-11   浏览: 217 ::
收藏到网摘: n/a

    Excel默认不支持Unix格式时间戳,这在导入数据时十分不便。可以用以下公式将时间戳转换成Excel格式的时间:

=(x+8*3600)/86400+70*365+19

    其中x为时间戳的单元格,8*3600中的8为中国的时区。然后将公式单元格设置为日期时间格式即可。转换结果如下图:

    Excel中导入Unix格式时间戳小技巧-软晨学习网

    这个公式的原理: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     加上1900到1970这七十年
(x+8*3600)/86400+70*365+19  闰年多出来的天数

    细心的话你会发现,1900年到1970年共是17个闰年,考虑到Excel将1900-1-1当作1,那么公式最后应该加18才对,为什么要加19?这是Excel中的一个bug——1900年也被当作闰年,因此应当再多加一天。

    另外要注意,在Excel的工具->选项->重新计算中,有个1904年日期系统,如果勾选这个选项,上面的公式应当将70改为66,即

=(x+8*3600)/86400+66*365+19