Vấn đề lọc dữ liệu trùng nhau trong 1 file có nhiều cột

  • Thread starter Thread starter AT1983
  • Ngày gửi Ngày gửi
Liên hệ QC

AT1983

Thành viên mới
Tham gia
24/6/09
Bài viết
5
Được thích
1
Chào tất cả mọi người.

Tôi có 1 file dữ liệu, trong đó có khoảng 2000 cột, trong từng cột có những số liệu trùng nhau. Tôi muốn xóa các dữ liệu trùng nhau đó. Tôi đã tìm hiểu trên diễn đàn, nhưng chưa tìm thây cách nào hiệu quả. Rất mong mọi người giúp đỡ.
 
Chào tất cả mọi người.

Tôi có 1 file dữ liệu, trong đó có khoảng 2000 cột, trong từng cột có những số liệu trùng nhau. Tôi muốn xóa các dữ liệu trùng nhau đó. Tôi đã tìm hiểu trên diễn đàn, nhưng chưa tìm thây cách nào hiệu quả. Rất mong mọi người giúp đỡ.
Bạn dùng advance filter mà lọc----> chọn vùng lọc vào --> data advance filter ---> chọn dấu check unique records only là lượm nó chứ gì. Nếu muốn copy chỗ khác thì chọn copyto tới chỗ nào bạn muốn đó
 
Upvote 0
Chào tất cả mọi người.

Tôi có 1 file dữ liệu, trong đó có khoảng 2000 cột, trong từng cột có những số liệu trùng nhau. Tôi muốn xóa các dữ liệu trùng nhau đó. Tôi đã tìm hiểu trên diễn đàn, nhưng chưa tìm thây cách nào hiệu quả. Rất mong mọi người giúp đỡ.
Dữ liệu 2000 cột? Vậy chắc dùng Excel 2007 hoặc Excel 2010 rồi... Với các phiên bản Excel này thì sao bạn không dùng chức năng Remove Duplicates để xóa trùng?

untitled1.JPG


untitled2.JPG
 
Upvote 0
Chào tất cả mọi người.

Tôi có 1 file dữ liệu, trong đó có khoảng 2000 cột, trong từng cột có những số liệu trùng nhau. Tôi muốn xóa các dữ liệu trùng nhau đó. Tôi đã tìm hiểu trên diễn đàn, nhưng chưa tìm thây cách nào hiệu quả. Rất mong mọi người giúp đỡ.

bạn xem bài mẫu tui làm theo ý của nmhung49 xem đúng yêu cầu bạn không nha
 

File đính kèm

Upvote 0
Dữ liệu 2000 cột? Vậy chắc dùng Excel 2007 hoặc Excel 2010 rồi... Với các phiên bản Excel này thì sao bạn không dùng chức năng Remove Duplicates để xóa trùng?
Cái sao em thấy chỉ dùng với dữ liệu nếu từng cột từng cột dữ liệu giống nhau thì ok, mà từng cột dữ liệu trùng khác nhau thì báo lỗi là dùng không được chức năng này. Nếu vậy chắc dùng code thôi hả anh?
 
Upvote 0
Cái sao em thấy chỉ dùng với dữ liệu nếu từng cột từng cột dữ liệu giống nhau thì ok, mà từng cột dữ liệu trùng khác nhau thì báo lỗi là dùng không được chức năng này. Nếu vậy chắc dùng code thôi hả anh?
Bạn thử cho 1 ví dụ cụ thể xem
 
Upvote 0
Em gửi thử dữ liệu anh xem coi phải không
Có vấn đề gì đâu chứ. Xem video clip dưới đây:

[video=youtube;rWT_yaCAsjE]http://www.youtube.com/watch?v=rWT_yaCAsjE[/video]

Lưu ý tác giả nói vầy:
Tôi có 1 file dữ liệu, trong đó có khoảng 2000 cột, trong từng cột có những số liệu trùng nhau. Tôi muốn xóa các dữ liệu trùng nhau đó. Tôi đã tìm hiểu trên diễn đàn, nhưng chưa tìm thây cách nào hiệu quả. Rất mong mọi người giúp đỡ.
Vậy có phải ta nên hiểu rằng xóa trùng cho từng cột hay không? Tức chọn từng cột và Remove Duplicates thôi
 
Upvote 0
Có vấn đề gì đâu chứ. Xem video clip dưới đây:

[video=youtube;rWT_yaCAsjE]http://www.youtube.com/watch?v=rWT_yaCAsjE[/video]

Lưu ý tác giả nói vầy:

Vậy có phải ta nên hiểu rằng xóa trùng cho từng cột hay không? Tức chọn từng cột và Remove Duplicates thôi
Cảm ơn anh NDU96081631, đúng là tôi muốn làm như trong clip minh hoạ, xoá trùng cho từng cột. Tuy nhiên nếu làm thủ công từng cột như vậy thì mất nhiều công lắm. Mong mọi người giúp tôi có phương án hiệu quả hơn. Cảm ơn tất cả mọi người.
 
Upvote 0
Có vấn đề gì đâu chứ. Xem video clip dưới đây:

[video=youtube;rWT_yaCAsjE]http://www.youtube.com/watch?v=rWT_yaCAsjE[/video]

Lưu ý tác giả nói vầy:

Vậy có phải ta nên hiểu rằng xóa trùng cho từng cột hay không? Tức chọn từng cột và Remove Duplicates thôi
2000 ( hai ngàn cột) mà "chơi" vầy em ứ chơi đâu. Kiếm cách khác đi Thầy ui .
 
Upvote 0
Cảm ơn anh NDU96081631, đúng là tôi muốn làm như trong clip minh hoạ, xoá trùng cho từng cột. Tuy nhiên nếu làm thủ công từng cột như vậy thì mất nhiều công lắm. Mong mọi người giúp tôi có phương án hiệu quả hơn. Cảm ơn tất cả mọi người.
Thì bạn record macro quá trình xóa 1 cột. Sau khi xong việc, bấm Alt + F11 vào xem code và chỉnh lại đôi chút để cho nó quét chon 2000 cột... Đơn giản thế thôi
Nếu bạn không làm được, hãy upload file lên, mọi người sẽ giúp cho
---------------
2000 ( hai ngàn cột) mà "chơi" vầy em ứ chơi đâu. Kiếm cách khác đi Thầy ui .

Đương nhiên nếu là em thì em sẽ dùng mảng ---> Chỉ sợ sẽ gây khó hiểu cho tác già (nhất là người mới học) khi muốn tùy biến gì đó
Để xem sao cái
 
Upvote 0
Có vấn đề gì đâu chứ. Xem video clip dưới đây:
Vậy có phải ta nên hiểu rằng xóa trùng cho từng cột hay không? Tức chọn từng cột và Remove Duplicates thôi
Vậy em nghĩ lộn rồi, em quét 2 cột làm 1 lượt nên báo lỗi vậy mình quét từng cột, mà chức năng này hay hay, cũng giống advance quá ta
 
Upvote 0
Thì bạn record macro quá trình xóa 1 cột. Sau khi xong việc, bấm Alt + F11 vào xem code và chỉnh lại đôi chút để cho nó quét chon 2000 cột... Đơn giản thế thôi
Nếu bạn không làm được, hãy upload file lên, mọi người sẽ giúp cho
---------------


Đương nhiên nếu là em thì em sẽ dùng mảng ---> Chỉ sợ sẽ gây khó hiểu cho tác già (nhất là người mới học) khi muốn tùy biến gì đó
Để xem sao cái

Thực sư là tôi không có khả năng chỉnh sửa code sau khi record!$@!!. Anh có thể chỉ dẫn chi tiết hơn 1 chút được không?
 
Upvote 0
Thực sư là tôi không có khả năng chỉnh sửa code sau khi record!$@!!. Anh có thể chỉ dẫn chi tiết hơn 1 chút được không?
Ví dụ code thế này:
Mã:
Sub Main()
  Dim i As Long
  On Error Resume Next
  For i = 0 To 1999
    [COLOR=red][B]Range("A1:A10000")[/B][/COLOR].Offset(, i).RemoveDuplicates 1, xlNo
  Next
End Sub
Trong đó Range("A1:A10000") chính là cột đầu tiên của vùng dữ liệu (có thể sửa lại cho phù hợp)
Áp dụng code vào file:
- Bấm Alt + F11 để mở cửa sổ soạn thảo code
- Vào menu Insert, chọn Module
- Copy đoạn code tôi viết ở trên, Paste vào khung phải của module
- Bấm F5 để chạy code
 
Lần chỉnh sửa cuối:
Upvote 0
Ví dụ code thế này:
Mã:
Sub Main()
  Dim i As Long
  On Error Resume Next
  For i = 0 To 1999
    [COLOR=red][B]Range("A1:A10000")[/B][/COLOR].Offset(, i).RemoveDuplicates 1, xlNo
  Next
End Sub
Trong đó Range("A1:A10000") chính là cột đầu tiên của vùng dữ liệu (có thể sửa lại cho phù hợp)
Áp dụng code vào file:
- Bấm Alt + F11 để mở cửa sổ soạn thảo code
- Vào menu Insert, chọn Module
- Copy đoạn code tôi viết ở trên, Paste vào khung phải của module
- Bấm F5 để chạy code

Rất cảm ơn anh ndu96081631, với sự hướng dẫn cụ thể của anh, tôi đã hiểu cách làm như thế nào.
 
Upvote 0
Web KT

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

Back
Top Bottom