Ghi chú màu chữ khi dữ liệu không giống nhau (2 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

vulunktheky

Thành viên thường trực
Tham gia
2/3/18
Bài viết
274
Được thích
84
Giới tính
Nam
XIn chào Anh/Chị và các bạn,

Mình có một vấn đề xin nhờ Anh/Chị và các bạn trợ giúp.
File dữ liệu của mình tương đối nhiều khoảng trên 5,000 dòng.
Với yêu cầu:
Xét nối Từng dòng các cột A,C,D,G,H,I,J,L,O,P
- Trường hợp 1: Nếu dòng của cột C có 200 mà không có 100 thì tô màu chữ đỏ (giống nhau ở các cột chỉ khác nhau ở cột C)
- Trường hợp 2: Nếu dòng của cột C có 100 mà không 200 thì tô màu chữ xanh (giống nhau ở các cột chỉ khác nhau ở cột C)
- Trường hợp 3: Nếu dòng của cột C vừa có 100 và 200 thì không làm gì cả.
Em xin cảm ơn.

1671243008007.png
 

File đính kèm

XIn chào Anh/Chị và các bạn,

Mình có một vấn đề xin nhờ Anh/Chị và các bạn trợ giúp.
File dữ liệu của mình tương đối nhiều khoảng trên 5,000 dòng.
Với yêu cầu:
Xét nối Từng dòng các cột A,C,D,G,H,I,J,L,O,P
- Trường hợp 1: Nếu dòng của cột C có 200 mà không có 100 thì tô màu chữ đỏ (giống nhau ở các cột chỉ khác nhau ở cột C)
- Trường hợp 2: Nếu dòng của cột C có 100 mà không 200 thì tô màu chữ xanh (giống nhau ở các cột chỉ khác nhau ở cột C)
- Trường hợp 3: Nếu dòng của cột C vừa có 100 và 200 thì không làm gì cả.
Em xin cảm ơn.

View attachment 284751
Trường hợp cột C vừa có 100 và 200 thì trông nó như thế nào bạn nhỉ
 
Upvote 0
Chỉ cần quan tâm cột C, O. Biểu diễn kỹ thuật cá nhân đi bạn. :wallbash: :wallbash: :wallbash:
Không biểu diễn gì cả. Ở đây có chỗ đang chưa rõ, số 100 và 200 sao lại ở hai dòng khác nhau chứ không phải trong một dòng, như vậy cứ xuất hiện trong cột C cả hai số bất kể ở dòng nào thì sẽ không tô mầu cả cột sao?
 
Upvote 0
Không biểu diễn gì cả. Ở đây có chỗ đang chưa rõ, số 100 và 200 sao lại ở hai dòng khác nhau chứ không phải trong một dòng, như vậy cứ xuất hiện trong cột C cả hai số bất kể ở dòng nào thì sẽ không tô mầu cả cột sao?
Hình như là giày, giày nó theo size cột O. 100 200 là hàng loại 1, loại 2. :p :p :p
Mình là dân chuyên đoán nên biết ngay. Không trúng thì trật.
 
Upvote 0
XIn chào Anh/Chị và các bạn,

Mình có một vấn đề xin nhờ Anh/Chị và các bạn trợ giúp.
File dữ liệu của mình tương đối nhiều khoảng trên 5,000 dòng.
Với yêu cầu:
Xét nối Từng dòng các cột A,C,D,G,H,I,J,L,O,P
- Trường hợp 1: Nếu dòng của cột C có 200 mà không có 100 thì tô màu chữ đỏ (giống nhau ở các cột chỉ khác nhau ở cột C)
- Trường hợp 2: Nếu dòng của cột C có 100 mà không 200 thì tô màu chữ xanh (giống nhau ở các cột chỉ khác nhau ở cột C)
- Trường hợp 3: Nếu dòng của cột C vừa có 100 và 200 thì không làm gì cả.
Em xin cảm ơn.

View attachment 284751
Bạn tham khảo:
Mã:
Option Explicit

Sub tapto()
    
    Dim dic As Object, Sheet As Worksheet, rng As Range, sCode As String, r As Long
    
    Set Sheet = ThisWorkbook.ActiveSheet
    r = Sheet.Cells(Sheet.Rows.Count, "A").End(xlUp).Row
    Set rng = Sheet.Range("A2:P" & r)
    Set dic = CreateObject("Scripting.Dictionary")

    For r = 1 To rng.Rows.Count
        sCode = Join(Array(rng(r, 1), rng(r, 3), rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
        If Not dic.Exists(sCode) Then dic.Add sCode, r
    Next r

    For r = 1 To rng.Rows.Count
        sCode = Join(Array(rng(r, 1), 200, rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
        If dic.Exists(sCode) Then
            sCode = Join(Array(rng(r, 1), 100, rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
            If Not dic.Exists(sCode) Then rng(r, 1).Resize(, 16).Font.ColorIndex = 3 Else rng(r, 1).Resize(, 16).Font.ColorIndex = 1
        ElseIf Not dic.Exists(sCode) Then
            sCode = Join(Array(rng(r, 1), 100, rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
            If dic.Exists(sCode) Then rng(r, 1).Resize(, 16).Font.ColorIndex = 5
        End If
    Next r
    
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Bạn tham khảo:
Mã:
Option Explicit

Sub tapto()
   
    Dim dic As Object
    Dim Sheet As Worksheet, rng As Range
    Dim data As Variant
    Dim sCode As String
    Dim r As Long
    Set Sheet = ThisWorkbook.ActiveSheet
    r = Sheet.Cells(Sheet.Rows.Count, "A").End(xlUp).Row
    Set rng = Sheet.Range("A2:P" & r)
    Set dic = CreateObject("Scripting.Dictionary")
   
    For r = 1 To rng.Rows.Count
        sCode = Join(Array(rng(r, 1), rng(r, 3), rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
        If Not dic.Exists(sCode) Then dic.Add sCode, r
        rng(r, 2) = Empty
    Next r

    For r = 1 To rng.Rows.Count
        sCode = Join(Array(rng(r, 1), 200, rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
        If dic.Exists(sCode) Then
            sCode = Join(Array(rng(r, 1), 100, rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
            If Not dic.Exists(sCode) Then
                rng(r, 2) = "Mau do"
            Else
                rng(r, 2) = "Khong lam gi"
            End If
        ElseIf Not dic.Exists(sCode) Then
             sCode = Join(Array(rng(r, 1), 100, rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
            If dic.Exists(sCode) Then
                rng(r, 2) = "Mau xanh"
            End If
        End If
    Next r
   
End Sub
Lâu rồi mới thấy chị quay lại GPE
Nhiệt tình ở chị lúc nào cũng có hỉ?!
Chúc chị cuối tuần vui nhé!
 
Upvote 0
Không biểu diễn gì cả. Ở đây có chỗ đang chưa rõ, số 100 và 200 sao lại ở hai dòng khác nhau chứ không phải trong một dòng, như vậy cứ xuất hiện trong cột C cả hai số bất kể ở dòng nào thì sẽ không tô mầu cả cột sao?
Mình sẽ xét tất cả các cột theo dòng hàng ngang nếu giống nhau hết nhưng chỉ khác cột C 100 và 200 thôi ạ. Và tô màu theo hàng chứ không theo cột ạ
Bài đã được tự động gộp:

Hình như là giày, giày nó theo size cột O. 100 200 là hàng loại 1, loại 2. :p :p :p
Mình là dân chuyên đoán nên biết ngay. Không trúng thì trật.
Này là giày á bạn. 100 là hàng loại A, 200 là số hàng lỗi của hàng loại A.
Mục đích tô màu là xác định giày đó vừa có hàng A vừa có hàng lỗi hoặc Chỉ có hàng lỗi. Hoặc không có hàng lỗi.
 
Upvote 0
Bạn tham khảo:
Mã:
Option Explicit

Sub tapto()
   
    Dim dic As Object, Sheet As Worksheet, rng As Range, sCode As String, r As Long
   
    Set Sheet = ThisWorkbook.ActiveSheet
    r = Sheet.Cells(Sheet.Rows.Count, "A").End(xlUp).Row
    Set rng = Sheet.Range("A2:P" & r)
    Set dic = CreateObject("Scripting.Dictionary")

    For r = 1 To rng.Rows.Count
        sCode = Join(Array(rng(r, 1), rng(r, 3), rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
        If Not dic.Exists(sCode) Then dic.Add sCode, r
    Next r

    For r = 1 To rng.Rows.Count
        sCode = Join(Array(rng(r, 1), 200, rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
        If dic.Exists(sCode) Then
            sCode = Join(Array(rng(r, 1), 100, rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
            If Not dic.Exists(sCode) Then rng(r, 1).Resize(, 16).Font.ColorIndex = 3 Else rng(r, 1).Resize(, 16).Font.ColorIndex = 1
        ElseIf Not dic.Exists(sCode) Then
            sCode = Join(Array(rng(r, 1), 100, rng(r, 8), rng(r, 9), rng(r, 10), rng(r, 12), rng(r, 15), rng(r, 16)), "|")
            If dic.Exists(sCode) Then rng(r, 1).Resize(, 16).Font.ColorIndex = 5
        End If
    Next r
   
End Sub
Cảm ơn bạn rất nhiều
 
Upvote 0
Web KT

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

Back
Top Bottom