首先,我们需要在Excel中创建一个表格,用于记录员工的打卡数据。表格的列可以包括:员工姓名、日期、上午上班打卡时间、上午下班打卡时间、下午上班打卡时间、下午下班打卡时间。
接下来,我们可以编写一个VBA宏来统计员工的迟到、早退和缺勤次数。以下是一个简单的示例代码:
```vba
Sub 统计考勤()
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
Dim 迟到次数 As Long, 早退次数 As Long, 缺勤次数 As Long
Set ws = ThisWorkbook.Worksheets("Sheet1") '请将"Sheet1"替换为您的工作表名称
lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
迟到次数 = 0
早退次数 = 0
缺勤次数 = 0
For i = 2 To lastRow '从第2行开始,假设第1行为表头
'上午上班
If ws.Cells(i, 3) > TimeValue("8:05") And ws.Cells(i, 3) = TimeValue("9:05") Then
缺勤次数 = 缺勤次数 + 1
End If
'上午下班
If ws.Cells(i, 4) TimeValue("10:55") Then
早退次数 = 早退次数 + 1
ElseIf ws.Cells(i, 4) TimeValue("14:05") And ws.Cells(i, 5) = TimeValue("15:05") Then
缺勤次数 = 缺勤次数 + 1
End If
'下午下班
If ws.Cells(i, 6) TimeValue("16:55") Then
早退次数 = 早退次数 + 1
ElseIf ws.Cells(i, 6) =TIME(8,5,0),C2=TIME(14,0,0),D2=TIME(18,0,0),D2=TIME(8,0,0),D2=TIME(14,0,0),D2TIME(8,0,0),B2TIME(11,55,0),D2") c. 缺勤次数:=COUNTIF(H:H,"当天缺勤") 其中F、G、H分别对应上面新增的3列。