Tình hình là em có bảng số liệu như trong hình, vấn đề là kiểm tra các ô trong cột G có trùng nhau không, nếu có thì chiếu sang cột K xem dữ liệu tương ứng có trùng nhau không ? Nếu trùng thì tô màu lại để đánh dấu, không trùng thi thôi.
VD: các ô G9,12,15,17 trùng tên nhau nhung khi chiếu qua cột K, thì K9,12,17 là trùng nhau nên ta tô màu lại, còn K15 ko trùng nên ta giữ nguyên
View attachment 136121
Code cùi:
[GPECODE=vb]Sub Tomau1()
Dim Dic As Object
Dim rng As Range
Set Dic = CreateObject("Scripting.Dictionary")
For Each rng In Range([G3], [G65536].End(xlUp))
If rng <> "" Then
If Not Dic.exists(rng.Value & rng.Offset(, 4).Value) Then
Dic.Add rng.Value & rng.Offset(, 4).Value, Empty
Else
Union(rng, rng.Offset(, 4)).Interior.ColorIndex = 6
End If
End If
Next
Dic.RemoveAll
For Each rng In Range([G3], [G65536].End(xlUp))
If rng.Interior.ColorIndex = 6 Then
If Not Dic.exists(rng.Value & rng.Offset(, 4).Value) Then
Dic.Add rng.Value & rng.Offset(, 4).Value, Empty
End If
End If
Next
For Each rng In Range([G3], [G65536].End(xlUp))
If rng.Interior.ColorIndex <> 6 Then
If Dic.exists(rng.Value & rng.Offset(, 4).Value) Then
Union(rng, rng.Offset(, 4)).Interior.ColorIndex = 6
End If
End If
Next
End Sub[/GPECODE]