pham van an
Thành viên mới

- Tham gia
- 22/4/09
- Bài viết
- 45
- Được thích
- 22
- Nghề nghiệp
- Giảng viên Xây dựng
Những dòng trùng nhau là sao, trùng hết tất cả các cột hạy trùng những cột nào, bạn thử tô màu và chỉ ra vài ví dụ dòng nào là trùng với dòng nào thử coi.Chào các ACE trên GPE. e có một file số liệu, giờ em muốn biết các số liệu của em có dòng nào trùng nhau không, nếu có thì chỉ ra hoặc chuyển màu khác, để em biết thay đổi lại số liệu.
Những dòng trùng nhau là sao, trùng hết tất cả các cột hạy trùng những cột nào, bạn thử tô màu và chỉ ra vài ví dụ dòng nào là trùng với dòng nào thử coi.
Dữ liệu nhiều như vậy mà giải thích kiểu đó ai mà hiểu.
Chào các ACE trên GPE. e có một file số liệu, giờ em muốn biết các số liệu của em có dòng nào trùng nhau không, nếu có thì chỉ ra hoặc chuyển màu khác, để em biết thay đổi lại số liệu.
Tôi thử thủ công không phát hiện dòng nào trùng với dòng nào, làm sao kiểm tra khi viết code xong, phải tạo dữ liệu trùng giùm tác giả chắc.TRÙNG NGUYÊN CẢ DÒNG thì gọi là TRÙNG đó anh
Public Sub GPE()
Dim Dic As Object, sArr(), I As Long, J As Long, Rng As Range, Cll As Range, Tem As String
Set Dic = CreateObject("Scripting.Dictionary")
sArr = Range([B4], [B65000].End(xlUp)).Resize(, 11).Value
For I = 1 To UBound(sArr, 1)
For J = 1 To 11
Tem = Tem & "#" & sArr(I, J)
If Not Dic.Exists(Tem) Then
Dic.Add Tem, 1
Else
Dic.Item(Tem) = Dic.Item(Tem) + 1
End If
Next J
Tem = vbNullString
Next I
Set Rng = Range([B4], [B65000].End(xlUp))
Rng.Interior.ColorIndex = 0
For Each Cll In Rng
For J = 0 To 10
Tem = Tem & "#" & Cll.Offset(, J)
Next J
If Dic.Item(Tem) > 1 Then
Cll.Resize(, 11).Interior.ColorIndex = 36
End If
Tem = vbNullString
Next
Set Dic = Nothing
Set Rng = Nothing
End Sub