[Xin Giúp Đỡ] Báo hiệu 7 ngày làm việc liên tục

Srosro

Thành viên mới
Tham gia ngày
10 Tháng bảy 2018
Bài viết
7
Được thích
2
Điểm
165
Tuổi
25
Xin chào các Pro!

Em mới làm chấm công!

Chấm công bình thường thì không sao!

nhưng Công ty em có 1 số quy định khi làm việc

Trong số đó có 1 quy định là không được làm việc 7 ngày Liên tiếp

Nếu không sẽ bị vi phạm

Em chấm công theo ngàylàm việc cho hơn 1000 người nên muốn nó hiển thị rõ ràng ra để em có thể chấm công 1 cách hiệu quả

File em có gửi kèm

Các Pro check giúp em nha!

DẠ em mong là có cách nào KHÔNG dùng VBA ấy ạ~
( tại nhiều file em up lên hệ thống công ty để chia sẻ nó không chấp nhận file chưa Macro)

TKS ALL!

Dữ liệu nguồn

1-Jan​
2-Jan​
3-Jan​
4-Jan​
5-Jan​
6-Jan​
7-Jan​
8-Jan​
9-Jan​
10-Jan​
11-Jan​
12-Jan​
13-Jan​
14-Jan​
15-Jan​
16-Jan​
17-Jan​
18-Jan​
19-Jan​
20-Jan​
21-Jan​
22-Jan​
23-Jan​
24-Jan​
25-Jan​
26-Jan​
27-Jan​
28-Jan​
29-Jan​
30-Jan​
31-Jan​
1-Feb​
2-Feb​
Nam
8​
8​
8​
0​
0​
8​
8​
8​
8​
8​
8​
8​
8​
0​
0​
8​
8​
8​
8​
8​
8​
0​
0​
8​
8​
8​
8​
0​
0​
8​
8​
8​
8​
Hung
9.5​
9.5​
11​
11​
9.5​
0​
0​
9.5​
9.5​
11​
0​
9.5​
9.5​
9.5​
9.5​
11​
9.5​
11​
11​
11​
9.5​
0​
0​
9​
10​
11​
11​
0​
11​
11​
9.5​
9.5​
9.5​
Tuan
0​
0​
0​
0​
0​
0​
0​
0​
0​
0​
0​
0​
0​
9.5​
9.5​
9.5​
0​
0​
0​
0​
0​
0​
0​
9.5​
9.5​
9.5​
9.5​
0​
0​
0​
0​
0​
0​
Phong
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​


kết quả mong muốn nếu thể sử dụng Conditional Formatting

1582213758105.png


Còn thực chất em chỉ muốn giải quyết vấn đề nên các Pro còn cách nào để giúp em thì em xin cảm ơn ạ
 

File đính kèm

!abili

Thành viên mới
Tham gia ngày
17 Tháng mười 2011
Bài viết
16
Được thích
7
Điểm
365
Nơi ở
Australia
Xin chào các Pro!

Em mới làm chấm công!

Chấm công bình thường thì không sao!

nhưng Công ty em có 1 số quy định khi làm việc

Trong số đó có 1 quy định là không được làm việc 7 ngày Liên tiếp

Nếu không sẽ bị vi phạm

Em chấm công theo ngàylàm việc cho hơn 1000 người nên muốn nó hiển thị rõ ràng ra để em có thể chấm công 1 cách hiệu quả

File em có gửi kèm

Các Pro check giúp em nha!

DẠ em mong là có cách nào KHÔNG dùng VBA ấy ạ~
( tại nhiều file em up lên hệ thống công ty để chia sẻ nó không chấp nhận file chưa Macro)

TKS ALL!

Dữ liệu nguồn

1-Jan​
2-Jan​
3-Jan​
4-Jan​
5-Jan​
6-Jan​
7-Jan​
8-Jan​
9-Jan​
10-Jan​
11-Jan​
12-Jan​
13-Jan​
14-Jan​
15-Jan​
16-Jan​
17-Jan​
18-Jan​
19-Jan​
20-Jan​
21-Jan​
22-Jan​
23-Jan​
24-Jan​
25-Jan​
26-Jan​
27-Jan​
28-Jan​
29-Jan​
30-Jan​
31-Jan​
1-Feb​
2-Feb​
Nam
8​
8​
8​
0​
0​
8​
8​
8​
8​
8​
8​
8​
8​
0​
0​
8​
8​
8​
8​
8​
8​
0​
0​
8​
8​
8​
8​
0​
0​
8​
8​
8​
8​
Hung
9.5​
9.5​
11​
11​
9.5​
0​
0​
9.5​
9.5​
11​
0​
9.5​
9.5​
9.5​
9.5​
11​
9.5​
11​
11​
11​
9.5​
0​
0​
9​
10​
11​
11​
0​
11​
11​
9.5​
9.5​
9.5​
Tuan
0​
0​
0​
0​
0​
0​
0​
0​
0​
0​
0​
0​
0​
9.5​
9.5​
9.5​
0​
0​
0​
0​
0​
0​
0​
9.5​
9.5​
9.5​
9.5​
0​
0​
0​
0​
0​
0​
Phong
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​
9.5​


kết quả mong muốn nếu thể sử dụng Conditional Formatting

View attachment 232204


Còn thực chất em chỉ muốn giải quyết vấn đề nên các Pro còn cách nào để giúp em thì em xin cảm ơn ạ
Bỏ tiêu đề chữ: Xin giúp đỡ
Vì đăng lên đây là biết hỏi cần giúp đỡ rồi, nên thừa

Thường người ta bôi màu ngày vi phạm (tức là ngày thứ 7 trở đi)
 

SA_DQ

/(hông là gì!
Thành viên danh dự
Tham gia ngày
8 Tháng sáu 2006
Bài viết
11,422
Được thích
17,333
Điểm
1,860
Bạn xài macro này cho ngàn người thân thương của bạn & chúc vui:
PHP:
Sub BoiMau7NgayTroLen()
Dim J As Long, Rws As Long, Bay As Integer, MyColor As Integer
Dim Cls As Range, Rng As Range, cRg As Range

Rws = [A9].End(xlDown).Row:                Randomize
MyColor = 34 + 9 * Rnd() \ 1:                  Application.ScreenUpdating = False
For J = 9 To Rws + 1
    Set Rng = Cells(J, "B").Resize(, 31)
    Set cRg = Nothing:                              Bay = 0
    Rng.Interior.ColorIndex = 2
    For Each Cls In Rng
        If Cls.Value > 0 Then
            If Bay = 0 Then
                Set cRg = Cls
            Else
                Set cRg = Union(cRg, Cls)
            End If
            Bay = Bay + 1
            If Bay > 6 Then cRg.Interior.ColorIndex = MyColor
        Else
            Set cRg = Nothing:                      Bay = 0
        End If
    Next Cls
Next J
 Application.ScreenUpdating = True
End Sub
 
Lần chỉnh sửa cuối:

bebo021999

Thành viên gạo cội
Tham gia ngày
26 Tháng một 2011
Bài viết
3,624
Được thích
5,721
Điểm
560
Nơi ở
TPHCM, Gò Vấp
Dùng Conditional Formatting tại ô B12 nhé:
Mã:
=AND(B12>0,IFERROR(INDEX(C$11:$AH$11,MATCH(0,C12:$AH12,0)),$AH$11)-IFERROR(LOOKUP(2,1/(A12:$B12=0),A$11:$B$11),$B$11)-1>6)
Apply cho toàn bộ bảng.
 

File đính kèm

Srosro

Thành viên mới
Tham gia ngày
10 Tháng bảy 2018
Bài viết
7
Được thích
2
Điểm
165
Tuổi
25
cảm ơn pro nhiều nha.
Bạn xài macro này cho ngàn người thân thương của bạn & chúc vui:
PHP:
Sub BoiMau7NgayTroLen()
Dim J As Long, Rws As Long, Bay As Integer, MyColor As Integer
Dim Cls As Range, Rng As Range, cRg As Range

Rws = [A9].End(xlDown).Row:                Randomize
MyColor = 34 + 9 * Rnd() \ 1:                  Application.ScreenUpdating = False
For J = 9 To Rws + 1
    Set Rng = Cells(J, "B").Resize(, 31)
    Set cRg = Nothing:                              Bay = 0
    Rng.Interior.ColorIndex = 2
    For Each Cls In Rng
        If Cls.Value > 0 Then
            If Bay = 0 Then
                Set cRg = Cls
            Else
                Set cRg = Union(cRg, Cls)
            End If
            Bay = Bay + 1
            If Bay > 6 Then cRg.Interior.ColorIndex = MyColor
        Else
            Set cRg = Nothing:                      Bay = 0
        End If
    Next Cls
Next J
Application.ScreenUpdating = True
End Sub
m ơn
 

Srosro

Thành viên mới
Tham gia ngày
10 Tháng bảy 2018
Bài viết
7
Được thích
2
Điểm
165
Tuổi
25
Dùng Conditional Formatting tại ô B12 nhé:
Mã:
=AND(B12>0,IFERROR(INDEX(C$11:$AH$11,MATCH(0,C12:$AH12,0)),$AH$11)-IFERROR(LOOKUP(2,1/(A12:$B12=0),A$11:$B$11),$B$11)-1>6)
Apply cho toàn bộ bảng.
Trời ơi. Tuyệt cú mèo. cảm ơn chất xám của pro rất nhiều
 
Top Bottom