thoa89
Thành viên mới

- Tham gia
- 22/3/19
- Bài viết
- 26
- Được thích
- 5


Cái chính là bạn phải báo cho biết:Em gửi anh bảng chấm công hiện giờ em đang làm ah
Rất nhiều công nhân, mà nhập thủ công mất rất nhiều thời gian ah
Ca đêm : tăng ca 3 tiếng : từ 6:00 ~ 8: 00 sang được tính 3 tiếng : 180 phút : và tách thành 120 phút + 60 phút ah
Đối với ngày chủ nhật : Ca ngày : tính 8 tiếng hành chính + số tiếng tang ca
Ca đêm : khung giờ : 20:00 ~ 11:00 tính ovt ca ngày
Từ 11 :00 trở đi tính ovt ca đêm
Mong anh chị giúp đỡ ah
View attachment 214473

Dear anh chị !Cái chính là bạn phải báo cho biết:
Thân
- Thời gian làm việc:
- Ca ngày: bắt đầu từ: XXh00 đến YYh00 (nghỉ giữa giờ: MMh00 đến NNh00)
- Ca đêm: bắt đầu từ: XXh00 đến YYh00 (nghỉ giữa giờ: MMh00 đến NNh00)
- Thời gian tăng ca:
- Ca ngày: bắt đầu từ: xxh00 đến yyh00 (nghỉ giữa giờ: mmh00 đến nnh00)
- Ca đêm: bắt đầu từ: XXh00 đến YYh00 (nghỉ giữa giờ: MMh00 đến NNh00)
- Cách tính đi muộn - về sớm, và có hay không "Cách tính làm tròn số": Vd: vào lúc 8:11 tính thành 8:15, hoặc trễ 5' tính thành 15', trễ 20' tính thành 30', chẳng hạn...
Tôi làm cho bạn 2 cách:Dear anh chị !
1. Thời gian làm việc
+ Ca ngày : Bắt đầu từ : 8:00 ~ 17:00 - Nghỉ giữa giờ ăn trưa : 12:00 ~ 1:00 PM
+ Ca đêm : Bắt đầu từ : 20:00 ~ 5:00 sáng hôm sau - Nghỉ giữa giờ ăn tối : 12:00 ~ 1:00 AM
2. Thời gian tăng ca :
+ Ca ngày : Bắt đầu 17:00 ~ 20:00 đối vột số trường hợp tăng ca từ : 17:00 ~ 20:30 , 17:00 ~ 21:00, 17:00 ~ 21:30, 17:00 ~ 22:00
+ Ca đêm : Bắt đầu 5:00 ~ 8:00 đối vột số trường hợp tăng ca từ : 5:00 ~ 8:30 , 5:00 ~ 9:00, 5:00 ~ 9:30
3. Cách tính đi muộn - về sớm : Sẽ trừ toàn bộ số phút lẻ đó : vd : 8:11 sẽ bị trừ 11 phút đó , giờ hành chính là 8 tiếng , quy đổi ra phút là : 480 phút trừ đi 11 phút đi muộn về sớm còn lại là : 469 phút
4. Nếu đi làm sớm : VD : vào lúc 7:00 thì sẽ được cộng thêm 1 tiếng vào giờ tăng ca
Mong anh chị giúp đỡ ah
em cảm ơn ah

Em cảm ơn anh, em sẽ tìm hiểu và học ahTôi làm cho bạn 2 cách:
Theo tôi, nếu được, bạn nên thử nghiệm và áp dụng Cách 2, vì nó dễ kiểm tra và quản lý tốt hơn, vã lại công thức xử lý sẽ nhẹ nhàng hơn.
- Cách 1: Dựa theo kết cấu file của bạn: Tạo 2 Name: "GVao" và "GRa" để trích lục giờ theo ngày (bạn nhấn Ctrl+F3 vào Name để xem chi tiết). các công thức các dòng để tính ra "Giờ công" quy đổi theo phút trong Sheet "GPE.1"
- Cách 2: Tách riêng ra phần ghi nhận giờ công (xem sheet "Data" file đính kèm) cùng tính toán các cột Giờ công chi tiết, đồng thời các công thức trích lục tương ứng qua bảng "GPE.2".
Thân
Điều chỉnh thêm, theo quy định về trước 10', cho các cách trong file.Có 1 điều kiện nữa là: cty e cho về sớm trước 10 phút : ví dụ : 17:00 kết thúc giờ làm : nhưng về 16:50 bắt đầu được tính công ah

Xem file kèm.

Em cảm ơn anh chị đã giúp đỡ ah , hihiXem file kèm.
Thân

Nếu dữ liệu lưu trữ cho 4000 người, mỗi người lại phải chấm khoảng 30 dòng, vị chi khoảng 120.000 dòng thì bạn nên nhờ anh em VBA viết code xử lý dùm bạn. Chứ công thức không "gánh" nỗi đâu.

vâng ah, anh giúp em phần giờ ra từ 20 phút đc cộng thêm 30 phút giúp em ahNếu dữ liệu lưu trữ cho 4000 người, mỗi người lại phải chấm khoảng 30 dòng, vị chi khoảng 120.000 dòng thì bạn nên nhờ anh em VBA viết code xử lý dùm bạn. Chứ công thức không "gánh" nỗi đâu.
Thân
Cách chỉnh phần giờ từ n phút (20') thành 30'vâng ah, anh giúp em phần giờ ra từ 20 phút đc cộng thêm 30 phút giúp em ah
ví dụ : ra 19:23 được cộng them 30 phút ah
K3=IF(F3="",,IF(AND(F3="N",WEEKDAY(C3)=1),MEDIAN(20,24,H3*24)-MEDIAN(20,24,G3*24),IF(G3>0,MEDIAN((TIME(HOUR(H3),LOOKUP(MINUTE(H3),{0,20,50},{0,30,60}),)+(H3*24>24))*24,IF(F3="D",{17,20},{30,36}))-IF(F3="D",17,30)+IF(WEEKDAY(C3)=1,8-MEDIAN(IF(G3*24<=12,{8,12},{13,17}),G3*24)+IF(G3*24<=12,8,9)-IF(H3*24<=12,16,17)+MEDIAN(IF(H3*24<=12,{8,12},{13,17}),H3*24),),)))*60

em cảm ơn anh ahCách chỉnh phần giờ từ n phút (20') thành 30'
Đứng tại ô K32, nhấn F2 vào công thức, sửa đoạn công thức LOOKUP(MINUTE(H32),{0,25,50},{0,30,60}) đổi thành LOOKUP(MINUTE(H32),{0,20,50},{0,30,60}). Đoạn công thức này ý nghĩa nếu số phút lẻ:
Nếu đúng rồi thì điều chỉnh:
- Từ 0-><20': không tính
- Từ 20-><50': tính tròn 30'
- Từ 50-> 60': tính tròn 60'
Enter, fill xuống.Mã:K3=IF(F3="",,IF(AND(F3="N",WEEKDAY(C3)=1),MEDIAN(20,24,H3*24)-MEDIAN(20,24,G3*24),IF(G3>0,MEDIAN((TIME(HOUR(H3),LOOKUP(MINUTE(H3),{0,20,50},{0,30,60}),)+(H3*24>24))*24,IF(F3="D",{17,20},{30,36}))-IF(F3="D",17,30)+IF(WEEKDAY(C3)=1,8-MEDIAN(IF(G3*24<=12,{8,12},{13,17}),G3*24)+IF(G3*24<=12,8,9)-IF(H3*24<=12,16,17)+MEDIAN(IF(H3*24<=12,{8,12},{13,17}),H3*24),),)))*60
Thân

anh ơi, cho em hỏi chút nữa ah, đối với ca đêm về 08:23(+1) sao lại không được cộng them 90 phút mà vẫn ở 60 phút ahem cảm ơn anh ah
Từ 5->6: là khoảng thời gian tăng ca của "Ca đêm" nên tối đa có 60', bạn xem lại trích dẫn dưới đây.anh ơi, cho em hỏi chút nữa ah, đối với ca đêm về 08:23(+1) sao lại không được cộng them 90 phút mà vẫn ở 60 phút ah
em hơi rốt nên mong anh giúp đỡ ah
Ca đêm : tăng ca 3 tiếng : từ 6:00 ~ 8: 00 sang được tính 3 tiếng : 180 phút : và tách thành 120 phút + 60 phút ah

Ca đêm : tăng ca 3 tiếng : từ 6:00 ~ 8: 00 sang được tính 3 tiếng : 180 phút : và tách thành 120 phút + 60 phút ahTừ 5->6: là khoảng thời gian tăng ca của "Ca đêm" nên tối đa có 60', bạn xem lại trích dẫn dưới đây.
Thân
Làm sao được!?Ca đêm : tăng ca 3 tiếng : từ 6:00 ~ 8: 00 sang được tính 3 tiếng : 180 phút : và tách thành 120 phút + 60 phút ah
Đúng là như thế ah, nhưng có 1 số công nhân về muộn sau 8:00 , nên họ ra cổng 08:23(+1) : thì vẫn được cộng them 30 phút ở ô 60 phút ah

em đã tìm hiểu được công thức và đã sửa được công thức ca đêm chỉ còn 120 phút . nhưng tăng ca thêm ở cột 60 phút. thì e lại không biết sửa ntn ahLàm sao được!?
Bạn đã tính vào cột 150' (ban đầu tôi tính là 120', theo yêu cầu bài trước tôi chỉnh lại thành 150') rồi, bây giờ tính thêm 60' thành 90' vậy hóa ra tổng giờ công bị tính lố 30' sao!?
Thân
Xem file kèm.em đã tìm hiểu được công thức và đã sửa được công thức ca đêm chỉ còn 120 phút . nhưng tăng ca thêm ở cột 60 phút. thì e lại không biết sửa ntn ah
hihi, mong anh chỉnh sửa giúp em ah

Ý em là : những công nhân nào về 8:00 thì vẫn được tính 60 phútXem file kèm.
Thân
Ý em là : những công nhân nào về 8:00 thì vẫn được tính 60 phút
ca đêm cũng tương tự như ca ngày : cũng có người về muộn sau 8:00 sang
Nên công nhân về từ 8:20, họ cũng có thể về 9:00 , 9:20 , 10:00, 10 : 20 thì hộ đc cộng thêm 30 phút hoặc hơn ah
Xem file kèm đã điều chỉnh theo yêu cầu.Ý em là : những công nhân nào về 8:00 thì vẫn được tính 60 phút
ca đêm cũng tương tự như ca ngày : cũng có người về muộn sau 8:00 sang
Nên công nhân về từ 8:20, họ cũng có thể về 9:00 , 9:20 , 10:00, 10 : 20 thì hộ đc cộng thêm 30 phút hoặc hơn ah
Em cũng có tìm hiểu công thức và cũng có điều chỉnh là 30.5 nhưng do toàn bộ là 90 phút nên em nhờ anh chị giúp ah

Cảm ơn anh rất nhiều ahXem file kèm đã điều chỉnh theo yêu cầu.
Thân

Bạn ghi: "Nếu vào muộn:......." !? thì vào như thế nào gọi là muộn?

Nếu vào muộn từ 20:00 trở đi, vào muộn bao nhiêu phút thì trừ đi ngần đấy phút ạ. Ví dụ : 20:05 thì bị trừ 5 phút, riêng vào muộn từ 22:00 trở đi thì ô K36 sẽ bị trừ theo khung giờ em đã viết ở trên ạBạn ghi: "Nếu vào muộn:......." !? thì vào như thế nào gọi là muộn?
Ví dụ: vào muộn 5', 10' hay 15'.... hay bao nhiêu thì bị trừ 120' tại ô K26. Giả sử nếu có trễ 5'-10' thì bị trừ 2 tiếng (=120') giờ công sao!?
Bạn ghi vậy khó hiểu quá!
Thân

Nếu vào muộn từ 20:00 trở đi, vào muộn bao nhiêu phút thì trừ đi ngần đấy phút ạ. Ví dụ : 20:05 thì bị trừ 5 phút, riêng vào muộn từ 22:00 trở đi thì ô K36 sẽ bị trừ theo khung giờ em đã viết ở trên ạ
Mong anh giúp đỡ ạ
Nhờ anh chị giúp đỡ công thức ạBạn ghi: "Nếu vào muộn:......." !? thì vào như thế nào gọi là muộn?
Ví dụ: vào muộn 5', 10' hay 15'.... hay bao nhiêu thì bị trừ 120' tại ô K26. Giả sử nếu có trễ 5'-10' thì bị trừ 2 tiếng (=120') giờ công sao!?
Bạn ghi vậy khó hiểu quá!
Thân