Nhờ Anh/Chị Hỗ Trợ lỗi chấm công tài xế file VBA (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Tôi tuân thủ nội quy khi đăng bài

huyhoangjo

Thành viên mới
Tham gia
8/9/20
Bài viết
12
Được thích
1
hiện tại e có đoạn code cũ chạy lỗi
yêu cầu : Tài xê lái xe phải chấm công vào buổi sáng( không chấm tính không đi làm) và giờ về buổi chiều
- nếu chấm giờ trưa thì không tính tăng ca thêm 1 tiếng
- nếu không chấm giờ trưa thì được tính thêm 1 tiếng tăng ca
Hiện tại file em chay không hiểu cữ mặc định đc công 1 tiếng tăng ca
Ai biết chỉ em fix với ah
đoạn code
" Function SOGIOLAM_TANGCA(GR As Variant, ByVal BOPHAN As String, MNV, RNG As Range)
Dim Phut As Byte
GR = GR - Int(GR)
'DIEU CHINH GIO VAO RA
Select Case MNV
Case 23, 304, 141, 202, 304, 290, 16, 252, 53, 419, 431, 152, 338
SOGIOLAM_TANGCA = 0
Exit Function
'GIO TANG CA LAI XE
Case 89
'TANG CA LO XE
tc = 1

If MNV = 89 Then
For I = 1 To 5
If RNG(1, 1) = "" Or GR < TimeSerial(12, 0, 0) Then
tc = 0
Exit For
End If
If RNG(1, I) >= TimeSerial(10, 30, 0) And RNG(1, I) <= TimeSerial(11, 15, 0) Then
tc = 0
Exit For
End If
Next
If GR > TimeSerial(16, 25, 0) Then
SOGIOLAM_TANGCA = TimeSerial(tc, 0, 0) + GR - TimeSerial(16, 0, 0)
If Minute(SOGIOLAM_TANGCA) >= 55 Then
SOGIOLAM_TANGCA = Hour(SOGIOLAM_TANGCA) + 60 / 60
ElseIf Minute(SOGIOLAM_TANGCA) >= 25 Then
SOGIOLAM_TANGCA = Hour(SOGIOLAM_TANGCA) + 30 / 60
Else
SOGIOLAM_TANGCA = Hour(SOGIOLAM_TANGCA) + 0 / 60
End If
Else
SOGIOLAM_TANGCA = tc
End If
Else '338
'TANG CA LAI XE
For I = 1 To 5
If RNG(1, 1) = "" Or GR < TimeSerial(13, 0, 0) Then
tc = 0
Exit For
End If
If RNG(1, I) >= TimeSerial(11, 30, 0) And RNG(1, I) <= TimeSerial(12, 15, 0) Then
tc = 0
Exit For
End If
Next
If GR > TimeSerial(17, 25, 0) Then
SOGIOLAM_TANGCA = TimeSerial(tc, 0, 0) + GR - TimeSerial(17, 0, 0)
If Minute(SOGIOLAM_TANGCA) >= 55 Then
SOGIOLAM_TANGCA = Hour(SOGIOLAM_TANGCA) + 60 / 60
ElseIf Minute(SOGIOLAM_TANGCA) >= 25 Then
SOGIOLAM_TANGCA = Hour(SOGIOLAM_TANGCA) + 30 / 60
Else
SOGIOLAM_TANGCA = Hour(SOGIOLAM_TANGCA) + 0 / 60
End If
Else
SOGIOLAM_TANGCA = tc
End If
End If
Exit Function
End Select "
code này được viết trong Module_FUNCTION

Sau đó lấy code SOGIOLAM_TANGCA bỏ vào Module_DULIEUCHAMCONG
 

File đính kèm

Bá đạo thật, tìm mãi mới thấy 2 ông tài xế (Driver)?
PS: mình không biết code. :wallbash: :wallbash: :wallbash:
 

File đính kèm

  • 1670903969898.png
    1670903969898.png
    140.4 KB · Đọc: 8
Web KT

Bài viết mới nhất

Back
Top Bottom