楼主 amulee |
在Excel中,时间和日期实质就是数字。 见贴: 怎样让大于一小时的自动标注为红色字体? http://www.exceltip.net/thread-47760-1-1.html 该提问实质是求得日期和时间与数字的转换关系,以便进行两者的运算。 一般情况下,日期是以1900-1-1为起始的,其代表的数字就是1。然后每增加1天,所代表的数字就增加1。换言之,整数1对应日期中的1天。 对于时间而言,就是数字的小数部分。由于1天等于数字1,所以1小时就是24分之一的1天,也就是1/24。同理可以得到1分钟等于1/(24*60),1秒钟等于1/(24*60*60)。 当日期和时间相加,即成为1个完整的小数(同时具有整数部分和小数部分),就成为了一个完整的时间,包含日期和时间。 其整数部分表示距离1899-12-31的天数,而小数部分表示在该日期中具体的时间。如1.0416666666666667,其整数部分为1,代表1900-1-1,小数部分为1/24,也就代表了1点,其完整的日期表述就为 1900-1-1 01:00:00。而单纯的日期为一个正整数,单纯的时间为一个小于1的小数。 由于时间和日期与数字的关系,可以利用其进行以下运算: 1、日期想减可以得到相差的天数,时间想减后经过运算可以得到相差的小时数。 2、小数部分与分钟和小时的转换 关系如下: 1小时=1/24 1分钟=1/(24*60) 1秒钟=1/(24*60*60) 根据该关系,时间可以直接和小数进行运算。如计算1小时1分钟1秒 究竟为多少秒,假设该时间存储于A1单元格,则计算式如下: 秒数=时间/单位时间所代表的数字 =A1/(1/(24*60*60)) =A1*24*60*60 =3661秒 同理,若希望求得该时间代表多少小时 小时=A1*24 =1.016944 将小时、分钟、秒钟为单位的数据转换成时间形式,只需进行逆运算即可。如8.8小时转换为标准的Excel时间为 8.8/24 本例的实现即运用了上述的运算规则,判断1个时间形式的数据与数字进行比较,如需要知道是否超过1小时,实质只需将其跟1/24做比较即可,是否超过1分钟只需将其与1/(24*60)进行比较即可。 |
2楼 亡者天下 |
学习了, |
3楼 海洋之星 |
厉害啊,学习啦 |
4楼 renyz2006 |
用这个角度能解决好多问题吧 |
5楼 bensonlei |
很不错的讲解!多谢了! |
6楼 水星钓鱼 |
等我这阶段的目标实现了,我也这么来发帖。 |
7楼 橘_____子 |
=A1/(1/(24*60*60)) 这个真心的不错 |