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