Lọc dữ liệu trùng trong Excel

Thảo luận trong 'Cấu trúc dữ liệu Excel và việc Xử lý dữ liệu' bắt đầu bởi Betocnau, 5 Tháng mười hai 2008.

  1. Betocnau

    Betocnau New Member

    Xin chào các anh chị,

    Kiến thức Excel của em còn hạn chế nên em muốn các anh chị giúp em vấn đề này:

    Em có một bảng danh sách khách hàng đc tổng hợp theo số lần giao dịch tại cty. Cuối năm cty tặng lịch cho các khách hàng này. Nhưng trong bảng thì có nhiều dòng chứa dữ liệu khach hàng trùng nhau (Khách hàng giao dịch nhiều lần tại công ty).
    Vì vậy em muốn lọc lại danh sách khách hàng theo mã số khách hàng thôi.

    File ví dụ:

    [​IMG]

    Điều mình cần là xóa đi các dòng có mã khách hàng trùng và chỉ chừa lại 1 dòng thuộc mã khách hàng đó thôi.

    Trường hợp trên: HA001 xuất hiện 3 lần, HB002 xuất hiện 2 lần

    Bảng mình cần là bảng bên dưới. Đã xóa đi 2 HA001 và 1 HB002.

    Bro nào biết chỉ mình với nha. Đang cần gấp.

    Ví dụ nên chỉ có vài mã khách hàng. File thực tới vài ngàn
     
    Last edited: 5 Tháng mười hai 2008
  2. ndu96081631

    ndu96081631 Well-Known Member

    - Quét chọn vùng dử liệu gốc
    - vào menu Data\Filter\ Advanced Filter
    - Trong cửa sổ Advanced Filter, chọn mục "Copy to another location"
    - Nhấp chuột vào khung "Copy to" rồi dùng chuột chọn 1 cell trên bảng tính, nơi đặt dử liệu sau khi lọc
    - Đánh dấu Unique Records Only ---> OK
     
    Last edited by a moderator: 8 Tháng mười hai 2008
  3. Betocnau

    Betocnau New Member

    Thanks nha.

    Nhưng không được. Criteria Range là gì???
     
  4. ndu96081631

    ndu96081631 Well-Known Member

    Khi nào bạn cần lọc có điều kiện gì đó mới cần đến mục này ---> Với yêu cầu trên của bạn thì Criteria Range để trống
    Nếu vẩn không được thì đưa file lên xem thử (đừng đưa hình)
    ------------------
    Ah.. Xin lổi, tôi nhìn nhầm (không có file nó phiền phức thế)
    Bạn làm như sau:
    - Quét chọn dử liệu trong cột B, từ B1 đến dòng cuối cùng có dử liệu trong cột B (nhớ chỉ cột B thôi)
    - vào menu Date\Filter\ Advanced Filter
    - Trong cửa sổ Advanced Filter, chọn mục "Filter the list, in-place"
    - Đánh dấu Unique Records Only ---> OK
    - Excel sẽ tạo cho bạn 1 vùng dử liệu duy nhất dựa trên cột B
    - Copy vùng này ---> Paste sang nơi khác
    - Tiếp theo lại vào menu Data\Filter chọn Show All là xong!
    Có 2 chổ tôi đánh dấu đỏ bạn cần lưu ý (làm khác với hướng dẩn đầu tiên)
     
    Last edited: 5 Tháng mười hai 2008
  5. haonlh

    haonlh Well-Known Member

    Hơi củ chuối, nhưng có thể là nhanh:
    - Chép dữ liệu ra vùng khác
    - Sort theo "mã khách hàng"
    - Xóa những dòng trùng nhau.
    Còn làm như
    ndu96081631
    cũng được, không quan tâm đến Criteria Range
     
  6. playmate

    playmate New Member

    Excel 2007 có công cụ cho vụ này mà
    Đánh dấu chọn từ B1 đến E10, sau đó bạn dùng chức năng Data/Remove Duplicates, chọn cột có dữ liệu trùng (cột B), OK.
    Nếu bạn đang dùng Excel 2003 thì làm như bạn nduxxxxxxx là OK
    Chúc bạn thành công
     
  7. hungpa

    hungpa New Member

    Mình cũng có một vấn đề tương tự như của Betocnau nhưng ngoài việc loại bỏ đi các mã khách hàng trùng nhau mình còn muốn cộng cột tổng số tiền mà khách hàng đó đã giao dịch. Làm thử như các hướng dẫn trên bằng Excel 2003 nhưng không được. Các cao thủ giúp tiếp đi. Mà Betocnau đã làm được như mọi người hướng dẫn chưa vậy? Chỉ mình với?

    Mình có đọc lại phần help trong microsoft.com thì thấy họ nói là phần Unique record chỉ lọc ra các dòng giống hệt nhau thui. Mà yêu cầu của Betocnau thì khác, các lần giao dịch đâu phải lần nào cũng có số tiền bằng nhau, chỉ có mã khách hàng và tên khách hàng giống nhau thui, còn phần hàng hóa và số tiền, ngày tháng giao dịch là khác nhau mà.
     
    Last edited by a moderator: 7 Tháng mười hai 2008
  8. boyxin

    boyxin Members actively

    Dù dữ liệu của bạn có nhều đến đâu đi chăng nữa thì làm theo cách này là hợp lý nhất
    Muốn hoàn hảo hơn thì gửi file lên, mọi người sẽ giúp, gửi ảnh lên như vậy ... Anh em ngại lắm
     
  9. hungpa

    hungpa New Member

    Em đã nói rồi, cách này chỉ lọc ra những dòng dữ liệu mà tất cả các cột giống hệt nhau thui, trong khi đó các dòng của em chỉ giống nhau ở mỗi mã khách hàng thui, các thông số còn lại khác nhau hoàn toàn.
    Cám ơn mọi người, em đã tìm ra cách sử lý zụ này rùi, vừa lọc ra được số mã khách hàng tối thiểu, vừa cộng được tổng số tiền.

    Cám ơn bạn đã đưa ra vấn đề, mình cũng đang có một bài toán phải lọc bớt các dòng có mã trùng nhau, nhưng các cột còn lại không giống hệt nhau. Nhưng yêu cầu của mình có hơi khác bạn một chút là mình lại phải cộng giá trị tiền ở cột số tiền, sau một hồi lần mò, mình đã thử nhiều cách: đếm, lọc,... nhưng cuối cùng mình thấy sử dụng pivot table là hiệu quả hơn cả. Mình upload lên đây file ví dụ, bạn áp dụng tương tự nha.
    Mình demo cách làm nhé, nếu ok thì repy lại. Mình sử dụng Exel 2003
    Bước 1.
    Đặt con trỏ tại ô A1, chọn menu Pivot Table and PivotChart Report...
    Bước 2.
    Tại cửa sổ wizard hiện lên nhấn Next, tại cửa sổ tiếp theo nếu thấy đã chọn vùng dữ liệu của mình rùi thì để kệ đấy, nhấn next tiếp
    Bước 3
    Chọn New Worksheet để tạo dữ liệu triết xuất ra một sheet mới.
    Bước 4
    Kéo trường Mã khách hàng vào ...Row field và kéo cột số tiền vào mục data (đây là yêu cầu thêm của mình nên làm vậy).
    Sau khi kéo cột mã khách hàng vào đó thì tự động nó sẽ bỏ đi các mã trùng nhau.


    ===> Đáp ứng yêu cầu của bạn chưa??? Hà hà.............
    Dù sao thì cũng cám ơn bạn đưa ra vấn đề.
     

    Các file đính kèm:

    • 01.JPG
      01.JPG
      Kích thước:
      31 KB
      Đọc:
      1,350
    • 02.JPG
      02.JPG
      Kích thước:
      43.6 KB
      Đọc:
      927
    • 03.JPG
      03.JPG
      Kích thước:
      43.1 KB
      Đọc:
      866
    Last edited by a moderator: 8 Tháng mười hai 2008
  10. thomtv

    thomtv New Member

  11. Tống Văn Đệ

    Tống Văn Đệ New Member

    Mình không hiểu ý trùng của bạn là sao
    Chỉ sửa công thức đánh STT
    không biết đúng ý ban chưa
     

    Các file đính kèm:

  12. vanhao_plag

    vanhao_plag New Member

    đâu cần công thức phức tạp dữ vậy. sao bạn khong dùng hàm if
    mình có các bước sau:
    Bước 1: bạn nên sắp sếp tăng ( giảm) dần
    Bước 2: bạn dùng hàm nếu ô đang xét bằng ô liền kề nó thì bỏ ngược lại thì lấy
    CDEF MH123ÌF(C1=C2,"BỎ","LÂY") MH225LẤY MH316LẤY MH48LẤY MH523BỎ MH556LẤY MH945LẤY

    SAY DÓ BẠN LỌC MÀ XÓA DI NHỮNG PHẦN BỎ
     
  13. taiphanmem

    taiphanmem New Member

    Cách làm của mình là như thế này (có thể mất thời gian tí)./-*+/
    - Đầu tiên là bạn phải sắp xếp danh sách theo thứ tự cho những cột mà dữ liệu trùng nhau (ý là cho những dòng trùng nhau nằm gần nhau).
    - Tiếp đến là bạn sẽ chèn thêm 1 cột vào danh sách.
    - Gán công thức IF(dòng trên = dòng dưới, "0", "1") cho cột mới này để tạo ra giá trị "0", "1".
    - Sau đó bạn sẽ lọc giá trị trị "1" => đó chính là kết quả của bạn, bạn có thể copy dữ liệu được lọc đó ra nơi khác để sử dụng tiếp.
     

    Các file đính kèm:

  14. dat_butmuc

    dat_butmuc weitə r ə'pɔn prɔvidəns

    Vất vả quá...
    Dùng CONSOLIDATE một nhát là ra ngay !
    Nhanh, gọn & quan trọng là nó có sẵn trong Excel
     
  15. nguyen duc man

    nguyen duc man Well-Known Member

    Kính Thầy dat_butmuc , xin Thầy chỉ dẫn cụ thể CONSOLIDATE trường hợp này đi Thầy
     
  16. volga

    volga New Member

    Sao không tìm kiếm với từ CONSOLIDATE thử xem sao ?
    Xem cái này đi nhé .Không biết đính kèm File rồi ,thay đỗi nhiều quá
    Thanks.
     
  17. txk

    txk New Member

    mình có vấn đề về lọc dữ liệu mong các bạn giúp đỡ mình xin cảm ơn nha !
    câu hỏi: sử dụng công cụ advance filter để lọc danh sách là nữ và có thu nhập lớn hơn 400000
    cau hỏi 2 : danh sách là nhân viên phòng hành chính có năm sinh từ năm 1967(>=1967)
    stt ho ten nam sinh gioi tinh phong ban số công tiền lương
    1 nguyen 1978 nam kế hoạch 23 450000
    2 b 1965 nu hanh chinh 24 650000

    dạnh như vậy và có nhiều dữ liệu hơn. mình đã sử dụng advance filter để lọc với đk là and(d2:d11="nu",f2:f11>400000)
    d2:d11 là giới tính
    f2:f11 là tiền lương
    các bạn giúp mình nhé
     

    Các file đính kèm:

    Last edited: 24 Tháng bảy 2010
  18. cop_kh

    cop_kh Hôm qua em đến trường...

    Bạn gởi File lên đẩ mọi người giúp đỡ cho chính xác nhé.
     
  19. MinhCong

    MinhCong Well-Known Member

    Bạn xem file có đúng ý chưa nhé!
     

    Các file đính kèm:

    Last edited: 24 Tháng bảy 2010
  20. txk

    txk New Member

    cảm ơn bạn nhiều lắm !!!thanks
    nhưng bạn có thể nói cho mình cách làm được không mình cũng làm thế sao mà ko được vậy
     

Chia sẻ trang này