Tìm dòng trùng nhau và cho biết để sửa (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

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
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.
 

File đính kèm

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.
 
Upvote 0
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.

TRÙNG NGUYÊN CẢ DÒNG thì gọi là TRÙNG đó anh
 
Upvote 0
Bạn xem trong file

Nếu dữ liệu nhiều bạn cần chờ người khác giúp thêm cách mới
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
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.

Cách đơn giản:
- Dùng 1 cột phụ nối hết các chuổi trên 1 dòng
- Dùng COUNTIF để đặt điều kiện cho Conditional Formating (dựa vào dữ liệu tại cột phụ)
Xem file
 

File đính kèm

Upvote 0
TRÙNG NGUYÊN CẢ DÒNG thì gọi là TRÙNG đó anh
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.
Híc!
PHP:
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
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Đúng là cách của ndu...rất đơn giản mà hay nữa, nhiều khi cứ đi tìm những cái cao siêu nhưng đơn giản lại bỏ qua. thanks
 
Upvote 0

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

Back
Top Bottom