excel考勤的统计功能备注:我上传了
这个问题用数据透视表来做很简单。 附件做了演示,为了保证外部数据源可用,下载本附件后,保存在电脑上,然后打开文件时会提示你包含外部数据源,记得在数据透视表和数据表中更改文件所在路径,及相应的SQL代码:
统计表数据源:
select 人员编号,姓名,考勤日期,班次,上班1,下班1,公休加班,事假,病假,出差,iif(上班1-#8:00#>0,hour(上班1-#8:00#)*60+minute(上班1-#8:00#),0) as 迟到,iif(#16:00#-下班1>0,hour(#16:00#-下班1)*60+minute(#16:00#-下班1),0) as 早退,iif(上班1 i...全部
这个问题用数据透视表来做很简单。
附件做了演示,为了保证外部数据源可用,下载本附件后,保存在电脑上,然后打开文件时会提示你包含外部数据源,记得在数据透视表和数据表中更改文件所在路径,及相应的SQL代码:
统计表数据源:
select 人员编号,姓名,考勤日期,班次,上班1,下班1,公休加班,事假,病假,出差,iif(上班1-#8:00#>0,hour(上班1-#8:00#)*60+minute(上班1-#8:00#),0) as 迟到,iif(#16:00#-下班1>0,hour(#16:00#-下班1)*60+minute(#16:00#-下班1),0) as 早退,iif(上班1 is NULL or 下班1 is NULL,8,0) as 缺勤 from [原始考勤$] where weekday(考勤日期,2)<6
缺勤表数据源:
select * from (select trim(人员编号) as 人员编号,姓名,考勤日期,iif(上班1 is Null and 下班1 is Null,'一天',iif(上班1 is Null,'上午',iif(下班1 is Null,'下午',Null))) as 缺勤 from [原始考勤$] where weekday(考勤日期,2)<6 order by 人员编号,考勤日期) where 缺勤 is not null。收起