如果我们正在创建一个数据表,需要在其中使用按日期排列的数据列表,在这种情况下,如果逐一输入列表日期,效率会很低。若能借助于Excel提供的自动填充和函数功能,自动填充日期序列,效率会大大提升,这样日期再多也不怕了。如下两种方法可以实现日期序列的自动生成。
1. 使用填充柄创建连续日期列表
在填充数据时,Excel有一个填充柄,它同样适合于日期的填充。虽然它不能直接创建两个给定日期之间的日期列表,但借助此工具创建连续日期也非常容易。
首先,在日期列的第一个单元格(如A2)中输入起始日期,然后单击单元格外部的任意位置,再次单击单元格,激活填充柄(即右下角的小方块变得可见)(图1)。
点击并下拉填充柄(或者双击填充柄小方块),便可以在Excel中创建连续日期列表。若所创列表不足截止日期,则继续用同样的方法下拉创建后续部分;若已经超出截止日期,则只需将超出部分删除即可(图2)。
2. 使用公式创建所有日期列表
如果一定要精确、自动地获取两个日期间的日期列表,那么使用公式是比较稳妥的解决办法。
首先,需要计算一个时间差,也就是两个日期之间相差的天数,计算时间差为的是求得该预留多少空格。假设我们将开始日期输入到了B2单元格,结束日期输入到了C2单元格,然后在D2单元格中输入公式“=DATEDIF(B3,C3,”d”)”,这样便可以在D2单元格中自动计算出填充时间差(图3)。
接下来,从表格的开始日期开始,按求得的时间差,为预留日期留出n-1个空格(假设n为计算所得的时间差),留空之后填入结束日期。本例为追求简单明了,用开始日期2018年3月4日到结束日期2018年3月8日为例说明。
随后,选中中间区域的空白日期单元格,然后输入如下公式:
=IF(B$2+ROW(B1)<B$6,TEXT(B$2+ROW(B1),”e/mm/dd”),””)
公式输入结束后,按下键盘的Ctrl+回车按键,这样中间的空白区域就会自动填充所有日期(图4)。
实际计算时,只需对上述公式中的起始和终止单元格变量,按照起止单元格位置做相应修改,即可达到通用的目的。