Chỉnh tiếpCám ơn bạn đã hỗ trợ nhưng vấn đề là tổng của Ngày Lễ và ngày Nghỉ cuối tuần chỉ được 24 giờ thôi. Như yêu cầu bên dưới ấy bạn. Code hiện tại giới hạn cho chỉ ngày Lễ hoặc ngày Cuối Tuần là 24h tổng lại của 2 loại ngày nghỉ đó hơn 24h/tháng.
Mã:
Function NgayNghi(MaNV$, Maso As Range, ChamCong As Range, Optional NghiLe& = 0) As Single
Dim sRow&, sCol&, i&, j&, Le&, CN&
sRow = ChamCong.Rows.Count: sCol = ChamCong.Columns.Count
For i = 1 To sRow
If MaNV = Maso(i, 1).Value Then
For j = 1 To sCol
If ChamCong(i, j).Value <> Empty Then
If ChamCong(i, j).Font.ColorIndex = 42 Then
CN = CN + 1
ElseIf ChamCong(i, j).Font.ColorIndex = 3 Then
Le = Le + 1
End If
End If
Next j
End If
Next i
If Le >= 3 Then NgayNghi = 24 Else NgayNghi = Le * 8
If NghiLe = 0 Then
If CN * 8 >= 24 - NgayNghi Then
NgayNghi = 24 - NgayNghi
Else
NgayNghi = CN * 8
End If
End If
End Function