1、如图,为我们原始的考勤数据,上班时间为9点钟,下班时间为18点30分,晚于9点打卡则为迟到,下班时间晚于18点30分则为加班。现在需要计算出员工的迟到和加班时间差。
2、如图,在单元格I2里输入公式=IF(AND(D2=$D$2,G2>E2),G2-E2,0)。
公式的意思是,必须满足应出勤为上班状态和签到时间晚于9点钟的条件时,开始计算迟到的时间数,或者数值为0。AND函数表示检查所有参数是否符合条件,如果都符合则返回TRUE。
3、输入完第一个公式后,选中这个公式的单元格,将鼠标光标移至单元格右下角位置变成黑色十字时,按住鼠标左键往下拖拉公式。就可以看到迟到的时间数都计算出来了。8号和15号是有迟到的,其他都没有迟到。
4、接下来我们来计算加班时间。在单元格J2输入公=IF(H2>F2,H2F2,IF(H2
根据你的补充,假设你的数据在11行,那么在C11输入以下公式:
=(30-MATCH(9E+307,D11:AH11)+COUNT(D11:AH11))/30
完全实现你的要求。如图,不过稍微不同的是:在未输入任何数据时,显示的不是100%,而是#N/A。
这要看你的出勤表格是是什么样的
我做了个格式,如下图:
橙色区域(B2、D2)设置了数据有效性,蓝色区域为公式自动生成。日期和序号根据每月天数自动调整。
如果需要HI我,我把原表发给你
补充:
这个问题并不难。
自己提问不清楚,就别怪大家回答不对。
假设A列1-30行代表30天,出勤就填上,不出勤就空白不填。
在B列输入公式=100-ROUND(COUNTBLANK($A$1:A1)*(100/30),0),下拉,只要你填上,B列相应行出现你的出勤率,每天的出勤率是有小数,保留整数计算
方法一:
出勤填1,不出勤填0
C12=1-COUNTIF(D12:AH12,0)/31
以百分比显示
方法二:
事先把所有空格填“1”,当天不出勤把“1”删掉。
C12=SUM(D12:AH12)/31
方法三:
另找一个单元格填写当月的1日,比如说这个表格是计算2010年12月的出勤率,就填“2010-12-1”。如这单元格在 C10:
C12=1-COUNTBLANK(OFFSET($D12,,,1,IF(EOMONTH(TODAY(),0)=EOMONTH($C$10,0),DAY(TODAY()),DAY(EOMONTH($C$10,0)))))/DAY(EOMONTH($C$10,0))
出勤必须当天登记,如果当天没登记就视同没出勤