最近才发现,我们小区新来的保安竟然是哲学家!他经常在小区入口拦住我问了三个问题:“你是谁,你从那里来,你要到哪里去”?我一下子蒙住了,不知该如何做答,活了这么多年,我还真没有认真思考过这个问题,偶尔想到的只是:“到现在为止,我到底活了多少天?”如果没有Excel的存在,这个问题还真是一个问题!
有了Excel,这个问题非常容易!。假如某人的生日是1981年9月2日,在单元格A1里输入1981-9-2,在B1单元格里输入=Today(),在C1里输入=B1-A1,然后按下Enter键,C1单元格里立即得到这个人来到这个世界的天数,如图所示。
关于Excel日期和时间的问题,为什么两个时期相减就能得到它们相隔天数呢?原来Excel在本质上将日期和时间的存储为一个数字,默认情况下,Excel把1900-1-1 0:00:00存储为1,把1900-1-1 0:00:00以后的每一个时刻存储为该时刻与1900-1-1 0:00:00这个时刻的差值(以天为单位)。
不信?请在A列输入1900-1-1 0:00:00,单击鼠标右键,在弹出的快捷菜单里选择“设置单元格格式”命令,最后在弹出的“设置单元格格式”对话框中,把单元格格式设置为“数值”。你会发现,当把日期设置成数值格式后,A1单元格的内容变成了1。
由此看来Excel中真正的日期和时间本质上是以数值的形式存储在单元格里的,不管你把日期的格式设置成了什么样的“外在”显示形式。如图所示,我们把日期和时间2011-6-23 0:00设置成了不同的外在显示形式。
好了,既然在Excel中,日期和时间本质上是以天为单位的数值形式存储的,那么我们就可以直接对日期进行加减计算了。
假设A1单元格中内容为2011-6-23,那么再过100天是几月几日?在B1中输入“=A1+100”,结果是2011-10-1;那此日期前100天是几月几日?在B1中输入“=A1-100”,结果是2011-3-15。
而此日期前38小时又是什么时间呢?在B1输入公式“=A1-38/24”,结果是2011-6-21 10:00。因为38小时是38/24天。注意:在计算完成后,还需要把A1:B1单元格设置成能够显示日期和时间的格式如图所示。
真正的日期时间
工作中经常遇到这种情况:从公司业务数据库系统导出的数据