Hôm nay mình sẽ hướng dẫn các bạn giải bài toán: Tính số ngày làm việc của nhân viên thỏa mãn điều kiện.
Ví dụ: Bạn có bảng chấm công, số giờ làm việc của mỗi nhân viên chia ra nhiều nhóm, nhiều cột và dữ liệu Merge. Bạn muốn nhanh chóng tổng hợp, xem mỗi người có tổng bao nhiêu ngày trong tháng mà làm việc >=12h/1 ngày. (dữ liệu demo, bạn có thể thêm cho đủ ngày trong tháng).
Link: Onedrive
![]() |
| Tính số ngày làm việc theo điều kiện |
Công thức:
1.=BYROW(C4:AN22,LAMBDA(r,SUM(N(TAKE(GROUPBY(TOCOL(SCAN(0,C1:AN1>0,SUM)),TOCOL(r),SUM,,0),,-1)>=12))))
2.=DROP(REDUCE(0,C4:C22,LAMBDA(x,y,VSTACK(x,SUM(N(TAKE(GROUPBY(TOCOL(SCAN(0,C1:AN1>0,SUM)),TOCOL(TAKE(AN22:y,1)),SUM,,0),,-1)>=12))))),1)
3.=SUM(N(MMULT(TRANSPOSE(N(TRANSPOSE(LOOKUP(COLUMN(C:AN),COLUMN(C:AN)/($C$1:$AN$1<>""),$C$1:$AN$1))=$C$1:$AN$1)),TRANSPOSE(N(+C4:AN4)))>=12))
4.=SUM((MMULT(--C4:AN4,--(LOOKUP(COLUMN($C$1:$AN$1),IF($C$1:$AN$1<>"",COLUMN($C$1:$AN$1),""))=TRANSPOSE(LOOKUP(COLUMN($C$1:$AN$1),IF($C$1:$AN$1<>"",COLUMN($C$1:$AN$1),"")))))>=12)*ISNUMBER($C$1:$AN$1))
