muốn lọc và xóa bớt các giá trị trùng nhau (2 người xem)

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

quanthienhan

Thành viên hoạt động
Tham gia
4/2/07
Bài viết
120
Được thích
3
Em có mảng dữ liệu bên...giờ em muốn lọc và xóa bớt các giá trị trùng nhau, để mỗi giá trị chỉ xuất hiện 1 lần thôi....vì dữ liệu em hay thay đổi ,Em xin code tích hợp vô nút nhấn như bên, để mỗi khi giá trị thay đổi, em chỉ việc ấn vô nút LỌC...thì giá trị mới tự lọc...vùng dữ liệu của Em chỉ khoảng như vậy thôi...Em xin chân thành cảm ơn các Anh Chị nhiều
 

File đính kèm

Em có mảng dữ liệu bên...giờ em muốn lọc và xóa bớt các giá trị trùng nhau, để mỗi giá trị chỉ xuất hiện 1 lần thôi....vì dữ liệu em hay thay đổi ,Em xin code tích hợp vô nút nhấn như bên, để mỗi khi giá trị thay đổi, em chỉ việc ấn vô nút LỌC...thì giá trị mới tự lọc...vùng dữ liệu của Em chỉ khoảng như vậy thôi...Em xin chân thành cảm ơn các Anh Chị nhiều

Bạn đã vi phạm điều II.2( Nội quy diễn đàn)
 
có bạn nào đi qua bớt chút thời gian giúp mình code này với...thanks nhiều
 
Bạn muốn có kết quả nào? Kết quả 1 hay kết quả 2 ?
Xin cám ơn bạn nhiều.....ý mình là xóa bớt tất cả giá trị trùng nhau..trong mảng ( a1.i3).chứ không phải một hàng hay 1 cột...thanks bạn..bạn có thể xem lại file cho dễ hiểu hơn được không..
 

File đính kèm

Em có mảng dữ liệu bên...giờ em muốn lọc và xóa bớt các giá trị trùng nhau, để mỗi giá trị chỉ xuất hiện 1 lần thôi....vì dữ liệu em hay thay đổi ,Em xin code tích hợp vô nút nhấn như bên, để mỗi khi giá trị thay đổi, em chỉ việc ấn vô nút LỌC...thì giá trị mới tự lọc...vùng dữ liệu của Em chỉ khoảng như vậy thôi...Em xin chân thành cảm ơn các Anh Chị nhiều

Mã:
Public Sub Loc()
Dim DL, Tam(99), kq(1 To 100000, 1 To 9), r As Long, c As Long

DL = Sheet1.Range("A1").CurrentRegion
For r = 1 To UBound(DL)
For c = 1 To UBound(DL, 2)
Tam(DL(r, c)) = DL(r, c)
Next c
Next r
DL = Split(Application.Trim(Join(Tam, " ")), " ")

For c = 0 To UBound(DL)
kq(Int(c / 9) + 1, c Mod 9 + 1) = DL(c)
Next c

Sheet1.Range("A1").End(xlDown).Offset(2).CurrentRegion.ClearContents
Sheet1.Range("A1").End(xlDown).Offset(2).Resize(Int(UBound(DL) / 9) + 1, 9) = kq
End Sub
 

File đính kèm

Bạn ngâm cứu cái này nhé
PHP:
Sub quanthienhan()
   
    Dim k As Integer
    For i = 1 To 10
        For j = 1 To 10
            For k = 1 To 10
                If Sheet1.Cells(i, j) <> Sheet1.Cells(k, 10) Then
                    c = Application.WorksheetFunction.CountIf(Sheet1.Range("M1:M20"), Sheet1.Cells(i, j))
                    If c = 0 Then
                        cc = Application.WorksheetFunction.CountA(Sheet1.Range("M1:M20")) + 1
                        With Sheet1
                            .Cells(cc, 13) = Sheet1.Cells(i, j)
                            '.Cells(cc, 14) = Application.WorksheetFunction.CountIf(Sheet1.Range("A1:I10"), Sheet1.Cells(i, j))
                        End With
                    End If
                End If
            Next
        Next
    Next
End Sub
 
Lần chỉnh sửa cuối:
Em xin cám ơn 2 Bác nhiều...ok rồi ạ...Bác phulien1902 có thể cho mình hỏi thêm chút được không..nếu mình muốn giá cần lấy hiện thành 3 hàng ngang như Bác gtri thì mình phải sửa code thế nào vậy..xin cảm ơn rất nhiều...+-+-+-+
 

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

Back
Top Bottom