在 Excel 中,除数字可以自动填充外,日期和时间也可以自动填充;其中日期可按日、月、年和工作日填充,时间可按每次递增时分秒填充。日期填充方法有三种,一种是用拖动的办法自动填充,第二种是用双击单元格填充柄的方法自动填充,第三种是用序列大批量填充,如填充一年、几年甚至几十年。
日期和时间除可自动填充为日期时间外,还可以用它们批量生成编号,既可以仅用日期时间生成编号又可以用日期加自定义序号生成编号;前者可通过自定义格式和简单的公式实现,后者需要用Row函数和Text函数实现。
一、Excel自动填充日期
(一)分别按日、月和年自动填充(用往下拖的方法)
选中 A1 单元格,把鼠标移到 A1 右下角的单元格填充柄上,按住左键,往下拖一直拖到要填充日期的最后一行,则所经过的单元格都自动填充上天数逐渐递增的日期;单击“自动填充选项”图标,在弹出的菜单中选择“以工作日填充”,则星期六和日期日不包含在所填充的日期中;再次单击“自动填充选项”图标,在弹出的菜单中选择“以月填充”,则月份自动递增,天不递增;再单击“自动填充选项”图标,在弹出的菜单中选择“以年填充”,则年递增,日月不递增;操作过程步骤,如图1所示:
图1
(二)用“序列”填充
1、选中 A1 单元格,按住 Alt,按一次 H,按一次 F,按一次 I,按一次 S,打开“序列”窗口,“序列产生在”选择“列”,“步长值”保留 1,“终止值”输入 2019-10-6,单击“确定”,则按“日”生成一年的日期;再用快捷键打开“序列”窗口,“序列产生在”依然选择“列”,“步长值”输入 7,“终止值”输入 2019-10-6,按回车,则每隔 7 天生成一个日期,一直生成到 2019-10-5;操作过程步骤,如图2所示:
图2
2、提示:打开“序列”窗口,也可以选择“开始”选项卡,单击屏幕右上角“编辑”上面的“填充”图标(有一个指向下的蓝色箭头哪个),在弹出的菜单中选择“序列”。
3、在这里也可以按年月日和工作日生成日期,只需在“序列”窗口选择相应选项即可。
(三)Excel自动填充当前日期和时间
1、选中 A1 单元格,按快捷键“Ctrl + ;”,则当前日期填充到 A1;选中 B1 单元格,按快捷键“Ctrl + Shift + ;”,则当前时间填充到 B1;操作过程步骤,如图3所示:
图3
2、用函数公式填充的当前日期和当前时间会自动更新,而用这个方法填充的当前日期和当前时间不会自动更新。
二、Excel自动填充时间,每次递增3秒或3分钟
(一)每次递增3秒
1、选中 A2 单元格,把公式 =A1+"0:0:03" 复制到 A2,按回车,返回递增 3 秒后的时间;把鼠标移到 A2 右下角的单元格填充柄上,按住鼠标左键,往下拖,则所经过单元格都自动填充上递增 3 秒的时间;操作过程步骤,如图4所示:
图4
2、从操作过程可以看出,秒递增到 60 后,分钟会自动加 1,10:55:58 变为 10:56:01。
(二)每次递增3分钟,单元格带日期和时间
1、选中 A2 单元格,把公式 =A1+"0:03" 复制到 A2,按回车,返回递增 3 分钟的时间;同样用往下拖的办法,自动填充其它单元格的时间,操作过程步骤,如图5所示:
图5
2、实例中的时间是即将过渡到新的一天时间 2018/10/18 23:56:55,当时间递增到 58 分后,继续递增 3 分钟,过渡到 2018/10/19 0:02:55,即日期和小时都会自动递增。
三、Excel用日期和时间、日期和序号批量生成编号
(一)用日期和时间批量生成编号
1、自定义格式。选中 A1 单元格,按 Ctrl + 1,打开“设置单元格格式”窗口,选择“数字”选项卡,再选择左边的“自定义”,把 yyyymmddhhmmss 复制到右边“类型”下面,按回车,则日期时间被去掉冒号,操作过程步骤,如图6所示:
图6
2、生成编号。选中 A2 单元格,把公式 =A1+"00:00:01" 复制到 A2,按回车,则生成一个编号,用往下拖的办法生成其它编号,操作过程步骤,如图7所示:
图7
(二)用日期和序号批量生成编号
1、假如要用当前的日期 + 000001 生成编号。选中 A1 单元格,把公式 =TEXT(TODAY(),"yyyymmdd")&TEXT(ROW(),"000000") 复制到 A1,按回车,返回 20181018000001,用往下拖的方法,生成其它编号,操作过程步骤,如图8所示:
图8
2、公式说明:=TEXT(TODAY(),"yyyymmdd")&TEXT(ROW(),"000000")
A、公式中 TODAY() 用于返回当天日期,TEXT(TODAY(),"yyyymmdd") 用于把返回的日期按四位“年”、两位“月”和两位“天”输出。
B、公式中 ROW() 用于返回当前行号,TEXT(ROW(),"000000") 用于把返回的行号按 6 位输出,即不足 6 位的行号,前面补 0。