lọc dữ liệu trùng và sum khối lượng

Liên hệ QC

RUNGLATHAPTE

Thành viên mới
Tham gia
6/6/10
Bài viết
13
Được thích
0
Có cao thủ nào giúp gà này với. mình có 1 file muốn lọc các dữ liệu trùng giống nhau tại cột C, D, E, F còn tại các cột G, I thì khi lọc lại sẽ bằng tổng các dữ liệu trùng nhau.
lần trước mình dùng sumifs nhưng phần đầu lại làn thủ công cho ít dữ liệu. bi giờ mình có khoảng 5000 dòng làm như vậy không ổn. mình dung advance filter nhưng không được. thank các bạn
 

File đính kèm

  • Book1.xlsx
    19.2 KB · Đọc: 24
Lần chỉnh sửa cuối:
Có cao thủ nào giúp gà này với. mình có 1 file muốn lọc các dữ liệu trùng giống nhau tại cột C, D, E, F còn tại các cột G, I thì khi lọc lại sẽ bằng tổng các dữ liệu trùng nhau.
lần trước mình dùng sumifs nhưng phần đầu lại làn thủ công cho ít dữ liệu. bi giờ mình có khoảng 5000 dòng làm như vậy không ổn. mình dung advance filter nhưng không được. thank các bạn
Bài trước của bạn không ai trả lời vì không cụ thể. Bây giờ bạn cần nói rõ:
1 - Bạn muốn xuất kết quả ra chỗ nào ? Địa chỉ cụ thể
2 - Kết quả ra như thế nào ? Bạn nhập thủ công vài hàng kết quả nhé
3- Đưa luôn cái dữ liệu 5000 dòng lên đi
4 -Trong dữ liệu của bài trước (hơn 2000 dòng) có những hàng chỉ có cột I có dữ liệu thì bạn muốn giải quyết nó ra sao???
Thân
 
mình up lại file rồi đó bạn. yêu cầu của mình có luôn trong đó. mong được sự giúp đỡ của mọi người. cảm ơn
 
mình up lại file rồi đó bạn. yêu cầu của mình có luôn trong đó. mong được sự giúp đỡ của mọi người. cảm ơn
RightClick vào sheet 04 ==> View Code ==> chép "em" này vào
Mã:
Private Sub Worksheet_Activate()
Dim Vung, d, Mg(), I, iTam, mM, kK, Ws
        Set Ws = Sheets("04")
        Set Vung = Ws.Range(Ws.[c4], Ws.[c10000].End(xlUp))
        Set d = CreateObject("Scripting.dictionary")
        ReDim Mg(1 To Vung.Rows.Count, 1 To 6)
        [c4:h1000].Clear
        mM = 1
            For I = 1 To Vung.Rows.Count
                iTam = Vung(I) & Vung(I).Offset(, 1) & Vung(I).Offset(, 2) & Vung(I).Offset(, 3)
                    If Not d.exists(iTam) Then
                        d.Add iTam, mM
                        Mg(mM, 1) = Vung(I): Mg(mM, 2) = Vung(I).Offset(, 1): Mg(mM, 3) = Vung(I).Offset(, 2)
                        Mg(mM, 4) = Vung(I).Offset(, 3): Mg(mM, 5) = Vung(I).Offset(, 4): Mg(mM, 6) = Vung(I).Offset(, 6)
                        mM = mM + 1
                    Else
                        kK = d.Item(iTam)
                        Mg(kK, 5) = Mg(kK, 5) + Vung(I).Offset(, 4)
                        Mg(kK, 6) = Mg(kK, 6) + Vung(I).Offset(, 6)
                    End If
            Next I
    [c4].Resize(mM, 6) = Mg
End Sub
Nhập dữ liệu đầy đủ ==> chọn Sheet2 xem kết quả
Thân
 

File đính kèm

  • lai loc(1).rar
    26.7 KB · Đọc: 82
Sorry

RightClick vào sheet 04 ==> View Code ==> chép "em" này vào
Mã:
Private Sub Worksheet_Activate()
Dim Vung, d, Mg(), I, iTam, mM, kK, Ws
        Set Ws = Sheets("04")
        Set Vung = Ws.Range(Ws.[c4], Ws.[c10000].End(xlUp))
        Set d = CreateObject("Scripting.dictionary")
        ReDim Mg(1 To Vung.Rows.Count, 1 To 6)
        [c4:h1000].Clear
        mM = 1
            For I = 1 To Vung.Rows.Count
                iTam = Vung(I) & Vung(I).Offset(, 1) & Vung(I).Offset(, 2) & Vung(I).Offset(, 3)
                    If Not d.exists(iTam) Then
                        d.Add iTam, mM
                        Mg(mM, 1) = Vung(I): Mg(mM, 2) = Vung(I).Offset(, 1): Mg(mM, 3) = Vung(I).Offset(, 2)
                        Mg(mM, 4) = Vung(I).Offset(, 3): Mg(mM, 5) = Vung(I).Offset(, 4): Mg(mM, 6) = Vung(I).Offset(, 6)
                        mM = mM + 1
                    Else
                        kK = d.Item(iTam)
                        Mg(kK, 5) = Mg(kK, 5) + Vung(I).Offset(, 4)
                        Mg(kK, 6) = Mg(kK, 6) + Vung(I).Offset(, 6)
                    End If
            Next I
    [c4].Resize(mM, 6) = Mg
End Sub
Nhập dữ liệu đầy đủ ==> chọn Sheet2 xem kết quả
Thân
Trước tiên xin cảm ơn bác, nhưng em nhìn vô cái đoạn mã của bác em nhức đầu quá. bác có thương em thì bác cho em công thức chứ cái ni em nuốt không vô.
em cũng làm được nhưng thủ công quá.
em làm như vầy: trước tiên em dùng cái advance filter sau em dung sumifs nhưng hơi lâu. em muốn hỏi các cao thủ giúp đỡ lun. xin cảm ơn mọi người.
 
Web KT
Back
Top Bottom