hello,大家好,今天跟大家分享下如何制作考勤表,我们先来看下今天制作的考勤表都能达到那些效果
1. 表头根据所选月份自动变动
2. 自动判断当月天数星期
3. 周六周日自动填充颜色,选择单休仅周日填充颜色
4. 自动计算当月应出勤天数,遇到节假日需要手动添加节假日
5. 自动添加边框,公式自动填充,下拉
6. 自动汇总当月考勤
7. 汇总表缺勤自动填充颜色
以上就是今天我们需要制作的考勤表的大致内容,制作的方法大多使用的是公式以及条件格式,都是我们比较常用的功能,下面就让我们来一起操作下吧
一、表头根据所选月份自动变动
首先我们需要在第二列制作需要数据的内容,如下图,然后我们在第一列中创建合并单元格,然后在里面输入公式:=D2&"年"&H2&"月"&"考勤表"
在这里d2是年份,h2是月份然后我们使用链接符号将数据链接起来,这样的话就能能够达到表格自动变化的效果
二、自动判断当月天数,星期
在号数的第一个单元格中输入=–(D2&-H2),然后在挨着的单元格中输入公式=IFERROR(IF(MONTH(B3+1)=$H$2,B3+1,""),"")向右拖动,在这里我们一共拖动30个格子即可,因为月份最多30天,然后我们选择日期这个区域然ctrl+1调出格式窗口然后选择自定义,在类型中输入d号,点击确定,这样的话就变成了号数
紧接着我们在下面一行的单元格对应的位置中输入=b3然后向右填充数据,然后按ctrl+1调出格式窗口,选择自定义将类型设置为aaa点击回车,这样的话就变为了星期显示
三、根据单双休自动填充颜色
首先我们选择星期这一行数据,然后点击条件格式,选择新建规则然后选择使用公式确定要设置的格式,我们将公式设置为:IF($L$2="双休",WEEKDAY(B$4,2)>5,WEEKDAY(B$4,2)>6)然后点击格式在填充中选择一个自己喜欢的颜色即可,这里我们使用if函数判断l2的值是不是双休,如果是就返回第一个条件(星期数大于5),如果不是就返回第二个条件(星期数大于6)
设置完成后我们只需要选择星期这一行数据向下填充,在填充柄中选择仅填充格式即可,这样的话我们就批量的向下填充了格式
四、自动计算当月的应出勤
自动计算当月出勤会根据单双休自动计算,当将单双休设置为双休默认一周休息两天,设置为单休默认休息1天,因为还牵扯到法定的节假日,这个使用公式计算比较麻烦,所以在这里设置为了手动输入,如果遇到法定节假日直接输入休息天数即可
公式为:
=IF(L2="双休",NETWORKDAYS.INTL(B3,EOMONTH(B3,0),1)-P2,NETWORKDAYS.INTL(B3,EOMONTH(B3,0),11)-P2)
这个公式在主体上是if函数,首先使用if函数判断单双休,然后使用NETWORKDAYS.INTL函数自定义休息日,在这我们使用EOMONTH函数获取当月的最后1天的日期,最后我们将结果减去p2,也就是法定假日的天数即可
五、自动添加边框,公式自动填充,下拉
可以先对几行数据区域设置了下拉来代表对应的考勤状态,然后使用countif函数对各种考勤状态进行汇总,设置完毕后我们选择设置的区域,然后按ctrl+t插入表,将表的标题行隐藏,然后将样式更改为无即可,这样的话当我们向下数据输入,公式下拉以及格式都会自动的填充
六、自动汇总当月考勤
新建一个sheet,并且设置好表头,我们在第一个姓名的位置中输入函数:=IFERROR(IF(考勤明细!A6="","",考勤明细!A6),"")这个的作用是判断考勤明细的表中姓名a6这个单元格的位置是不是空白的,如果是就返回空白,如果不是就返回这个名字,当返回名字后我们就使用vlookup在考勤明细中查找出勤天数,请假天数等信息,这个是vlookup的常规用法就不多做介绍了
然后我们选择这几列数据,选择使用公式确定格式然后输入公式:=$A1<>"",紧接着点击格式,选则外边框即可,点击确定,这样的话每当读取到一个名字就会自动的为整行添加边框
七、汇总表缺勤自动填充颜色
同样的我们按住ctrl键先选择第一行的迟到天数早退天数两个单元格,然后选择出勤天数以及请假天数,最后选择缺勤天数,这样做是为了将缺勤天数设置为活动单元格,然后点击条件格式,选择使用公式确定格式输入公式:=IF($D2="",FALSE,$D2>0)我们这么做为了判断缺勤天数这个单元格是不是空值,如果是不显示设置的格式,如果不是则显示设置的格式
我们需要向下多填充一些。满足我们使用即可
怎么样?你觉得这些功能满足你的日常使用吗?
我是excel从零到一,关注我持续分享更多excel技巧