主页 > excel专区 > excel函数 >

excel 如何制作动态考勤表,掌握各种日期函数

excel函数 2021-10-10

在工作中常用到考勤表,那么如何做一份考勤表,可以每个月都使用呢,那么就需要让考勤表的表头动态生成日期和星期,我在几期视频中也讲过,但总觉讲的不太清楚,那么今天就用图文的形式来说明下。

动态考勤表的核心就是一连串的日期函数,尤其是today函数,是实现动态考勤表的核心,其他的还要使用到文本连接符&,还有日期函数year,month,day。过程呢很简单,我们先来说这几个函数的用法。

today(),返回当前的日期。比如今天是2020年8月4日,那么在单元格输入=today(),就返回2020-8-4,如果到了明天,你再打开就是2020-8-5,打开考勤表或者按f9刷新,就能看到变化。

year(日期):返回当前日期的年部分。

month(日期):返回当前日期的月部分。

day(日期):返回当前日期的日部分。

1.生成考勤表动态标题

excel:制作动态考勤表,掌握各种日期函数

函数解读:

=today() 获取当前的日期

=year(d5) 获取日期的年部分

=month(d5) 获取日期的天部分

=d6&"年"&d7&"月考勤表" 使用&连接符将几部分拼接到一起。

2.获取最大天数

要动态生成日期,因为每个月有28天,30天,或者31天,所以要生成日期,必须判断一个月的最大天数,而excel中并没有提供获取一个月最大天数的函数,如果我们能获取到下一个月的第一天,那么减去1,就是当月的最大天数。

excel:制作动态考勤表,掌握各种日期函数

函数解读:=date(d6,d7+1,1)

date函数的三个参数分别为年月日,在月的部分我们+1,就转化成了下一个月,第三个参数是1,就是一个月的第一天。

=d9-1 用获取的日期减去1,就是当月的最后一天。

然后=day(d10),获取到了天数。

3.根绝列号生成天

excel:制作动态考勤表,掌握各种日期函数

函数解读=column(b:b)-1

column(b:b) 返回b列的列号,因为是第二列,所以减去1,然后向右拖拽即可生成1-31的天数,这里有一个问题,最大是31天,最小是28天

所以我们使用column(b:b)-1和最大天数对比,如果小于最大天数,就正常显示日期,如果大于就显示空值。

4.生成表头

excel:制作动态考勤表,掌握各种日期函数

公式解读:=if(column(b:b)-1<=$d$11,column(b:b)-1,"")

向右边拖拽31天即可。不月份不是31天的时候,比如28天,那么后三列显示为空。

5.生成星期数据

excel:制作动态考勤表,掌握各种日期函数

公式解读:=date($d$6,$d$7,b3)

使用date函数生成日期。然后在设置单元格格式中设置为显示星期的形式。这样表头就直接动态起来。以上呢就是动态考勤表的生成过程。


标签: excel制作动态考勤表

九游会j92网 copyright © 2016-2020 sxqcrd.com. some rights reserved. 备案号:闽icp备16003269号