Excel中的具体date和时间范围
我每天从上午8点到晚上8点每天有12场比赛。
我在Excel电子表格中有两列:“date和时间”和“描述”。
我需要为格式中的“date和时间”列的每个单元格添加date和时间标记
16/11/2011 08:00
所以前十二个单元格将如下所示:
16/11/2011 08:00 16/11/2011 09:00 16/11/2011 10:00 16/11/2011 11:00 16/11/2011 12:00 16/11/2011 13:00 16/11/2011 14:00 16/11/2011 15:00 16/11/2011 16:00 16/11/2011 17:00 16/11/2011 18:00 16/11/2011 19:00 16/11/2011 20:00
那么第二天就要来了。
17/11/2011 08:00 17/11/2011 09:00 17/11/2011 10:00 17/11/2011 11:00 17/11/2011 12:00 17/11/2011 13:00 17/11/2011 14:00 17/11/2011 15:00 17/11/2011 16:00 17/11/2011 17:00 17/11/2011 18:00 17/11/2011 19:00 17/11/2011 20:00
有没有一种方法可以让列自动填充几个月?
把你的第一个date放在单元格A1
:
16/11/2011 08:00
在单元格A2
和下面,添加公式:
=A1+TIME(IF(HOUR(A1)=20,12,1),0,0)
然后拖下你的公式,直到你需要的地方。
[编辑]解释一下这个公式:为了保持公式相当简单,它是相当具体的。
意味深长,
- 该公式从前一个date
A1 +
- 然后,它会添加几个小时(使用
TIME
函数),但不会分钟或秒(0,0)
即查看公式的结尾 - select要添加的小时数,它检查前一个date小时是
8pm
(即HOUR(A1) = 20
)。- 如果是这样,则增加
12
小时,以便新的date在第二天早上8am
。 - 如果不是,则只增加
1
小时(下一个事件)
- 如果是这样,则增加
[编辑2]跳过周末的新公式(它检查前一天的date是星期五( WEEKDAY=6
)和小时是8pm
( HOUR(A1)=20
)。如果是,则增加两天因为Excel中的date存储为序列号,单位是一天)。
=A1+TIME(IF(HOUR(A1)=20,12,1),0,0) + IF(AND(HOUR(A1)=20,WEEKDAY(A1)=6),2,0)