Lọc không trùng của 3 cột và Sort

Liên hệ QC

LuuAnh980

Thành viên tiêu biểu
Tham gia
28/9/22
Bài viết
452
Được thích
104
Giới tính
Nữ
Chào các anh chi!!!!
Em có file muôn nhờ các anh chị lọc không trùng của 3 cột và sau khi lọc xong thì sort từ nhỏ đến lớn luôn ạ.
Trong 3 cột có một số dòng rống, thì bỏ qua ạ.
Trong file em có ví dụ ạ.
 

File đính kèm

  • Loc.xlsx
    103.2 KB · Đọc: 16
Chào các anh chi!!!!
Em có file muôn nhờ các anh chị lọc không trùng của 3 cột và sau khi lọc xong thì sort từ nhỏ đến lớn luôn ạ.
Trong 3 cột có một số dòng rống, thì bỏ qua ạ.
Trong file em có ví dụ ạ.
Tiêu chí lọc không trùng dựa vào cột nào, Sort ưu tiên cột nào. Diễn giải rõ ràng vào bạn
 
Upvote 0
Tất cả dựa vào cột E anh ơi, Sort ưu tiên cột E luôn anh ơi.
Mong anh giúp.
 
Upvote 0
Bạn thử kiểm tra kết quả xem đúng chưa nhé!
PHP:
Sub GPE()
    Dim Arr(), Res(), i&, j&, k&, Lr&
    Dim Dic As Object, Key$
    Set Dic = CreateObject("Scripting.Dictionary")
    With Sheets("Sheet1")
        Lr = .Range("E" & Rows.Count).End(xlUp).Row
        Arr = .Range("E2:O" & Lr).Value
        ReDim Res(1 To UBound(Arr), 1 To 3)
        For i = 1 To UBound(Arr)
            If Arr(i, 1) <> "" Then
                Arr(i, 2) = Arr(i, 2) * 1
                Key = Arr(i, 1) & "_" & Arr(i, 11)
                If Not Dic.exists(Key) Then
                    k = k + 1
                    Dic.Add (Key), k
                    Res(k, 1) = Arr(i, 1)
                    Res(k, 2) = Arr(i, 2)
                    Res(k, 3) = Arr(i, 11)
                Else
                    Res(Dic.Item(Key), 2) = Res(Dic.Item(Key), 2) + Arr(i, 2)
                End If
            End If
        Next i
        If k Then
            .Range("T2:V100000").ClearContents
            .Range("U:U").NumberFormat = "0"
            .Range("T2").Resize(k, 3).Value = Res
            With Range("T1:V1000")
                .Sort .Cells(1, 1), 1, Header:=xlGuess
            End With
        End If
    End With
    MsgBox "Hoan Thanh"
    Set Dic = Nothing
End Sub
 
Upvote 0
Chưa đúng anh ơi!!!!
Sao có So ma gì mà lên tới hàng trăm anh
BNBB.png
cột don hang sao canh trai canh phải tùm lum vậy anh.
 
Upvote 0
Được rồi anh @anhtuan2939 ơi, nhưng cột U em muốn là Text mà không được. tức số 1 thành 01.....
 
Upvote 0

File đính kèm

  • Loc.xlsb
    73 KB · Đọc: 5
Upvote 0
Upvote 0
Cột số mã không phải cộng dồn, mà lọc đưa qua theo côt Đơn hàng anh @Zl: 0933707265 ơi.
Ủa mà Sort sao kỳ vậy anh @Zl: 0933707265 sao 120,122,125 lại nằm trên 95,99
View attachment 282600
Nó đang sort theo cột đơn hàng.
Bạn đổi
PHP:
            With Range("T1:V1000")
                .Sort .Cells(1, 1), 1, Header:=xlGuess
            End With
Thành
PHP:
            With Range("T1:V1000")
                .Sort .Cells(1, 2), 1, Header:=xlGuess
            End With
Xem được không?!
 
Upvote 0
Thôi đành chấp nhận thôi, vì khi sort cột Số mã thì cột Đơn hàng lại không sort, mà chính của em là cột Đơn hàng.
Em cám ơn các anh @anhtuan2939 và anh @Zl: 0933707265 nhiều !!!
 
Upvote 0
À các anh ơi!!!
Giờ em muốn lọc qua sheet khác thì chỉnh code làm sao anh @Zl: 0933707265 ơi.
 
Lần chỉnh sửa cuối:
Upvote 0
Sao em kéo công thức xuông nó ra như vầy
HT68.png
 
Upvote 0
thiếu Đơn hàng 2925 số mã là 35 , 2925 mã số 43 nữa (các dong 60,62,73,77,78...
 
Upvote 0
Web KT

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

Back
Top Bottom