有考勤系统的请自动略过,网上做考勤表的教程有很多,这里将考勤表做了一些修改,可实现以下效果:

1、标题《******公司3月考勤表》根据单元格的变动自动更新月份;

2、考勤日期自动更新,考勤明细根据考勤记录变化,不需要在考勤明细表内用符号标记;

3、自动计算出勤天数和请假天数;

4、自动跳过周末,设置假期和加班后,假期自动变空,加班自动算出勤。

excel制作考勤表的教程全解(使用EXCEL制作简易考勤表)(1)

操作步骤如下:

excel制作考勤表的教程全解(使用EXCEL制作简易考勤表)(2)

第一步,设置标题,在A1单元格中输入=V2,使标题显示为月份的数字,设置A1单元格格式为"******公司"#"月考勤表"(引号需用英文),显示结果为《******公司3月考勤表》,后面只需要修改V2单元格数字,标题月份即可自动更新。

excel制作考勤表的教程全解(使用EXCEL制作简易考勤表)(3)

第二步,在考勤明细表的A、B列输入相应的内容(姓名、上午下午),在C3单元格内输入=DATE(S2,V2,X2),即3月份第一天日期2018年3月1日,设置格式为DD,即只显示日,C4单元格输入=C3,并将格式设置为aaa,即只显示星期,效果如图所示,向右拖动填充。

第三步,新建SHEET2,根据放假时间制作假期和加班时间表,如图所示:

excel制作考勤表的教程全解(使用EXCEL制作简易考勤表)(4)

4月5-7日是清明节假期,上班否列标记为空,4月8日是周日,要上班,标记为√,其他放假和加班时间按照此标准进行标记,如公司内部要求放假或加班,在这里一并进行标记。为方便运用公式,为A、B、C列定义名称,分别为“日期”,“时间”,“上班否”。(定义名称操作:选中A列-公式-定义名称-输入名称即可)

excel制作考勤表的教程全解(使用EXCEL制作简易考勤表)(5)

第三步,制作个人出勤情况登记表,如图所示进行记载,

excel制作考勤表的教程全解(使用EXCEL制作简易考勤表)(6)

excel制作考勤表的教程全解(使用EXCEL制作简易考勤表)(7)

如觉得用符号输入比较麻烦,可以设置一个数据源,使用VLOOKUP函数进行查找,在H列输入状态,在I列自动生成相应的符号,如可在I2单元格内输入=VLOOKUP(H2,$L$1:$M$12,2,0),即可自动输入相应的符号。

再次定义E到I列的名称为“姓名”,“日期2”,“时间2”,“加班请假”。

第四步,返回考勤明细表,在张三3月1日上午对应的单元格即C5单元格内输入=IFERROR(LOOKUP(1,0/((姓名=$A5)*(日期2=C$3)*(时间2=$B5)),加班请假),IFERROR(LOOKUP(1,0/((日期=C$3)*(时间=$B5)),上班否)&"",IF(WEEKDAY(C$3,2)>5,"","√")))(注意混合引用),在C6单元格中复制C5的公式,选中C5,C6向右拖动填充,选中C5:AG6单元格向下拖动填充(一定要两行一起拖动)。

公式有点长,但很好理解,用了三个IF系列函数进行判断,首先LOOKUP(1,0/((姓名=$A5)*(日期2=C$3)*(时间2=$B5)),加班请假)是判断该员工是否有个人加班或者请假,如有则按照加班或请假做记录;

如果没有就使用LOOKUP(1,0/((日期=C$3)*(时间=$B5)),上班否)判断该日期时间是否为法定或公司内部规定的放假或加班时间,如有则按照放假或加班做记录;

如果没有就使用IF(WEEKDAY(C$3,2)>5,"","√")进行判断,如果为周六、周日的话,就记为空,否则为出勤。

第五步,计算出勤或请假天数。

excel制作考勤表的教程全解(使用EXCEL制作简易考勤表)(8)

使用数组函数,在AH5单元格内输入=SUM(COUNTIF(C5:AG6,{"√","★","&"}))/2,同时CTRL SHIFT ENTER,这里"√","★","&"分别代表出勤、加班、公差,都算作出勤(如有其它情况,也可加入{}中一并计算),合并AH5和AH6,向下拖动(合并单元格不能使用数组公式,所以要输入公式后再合并。)

在AI5单元格内输入=DAY($AA$2)-AH5-COUNTBLANK(C5:AG6)/2,计算请假天数,意思为当月总天数-出勤天数-空单元格占据的天数,合并AI5、AI6单元格,向下拖动。

要点:

1、使用自定义格式,显示所需要的格式;

2、使用LOOKUP函数多条件查询功能;

3、使用IFERROR、IF函数实现多重判断;

4、使用COUNTIF、COUNTBLANK函数计算个数。

未解决的问题:

每个月的日期不一样,需要增减日期。建议复制该考勤明细表,在该表的基础上删去多余的日期,用4个表记录考勤(28天,29天,30天,31天)。

,