Để lọc trùng dữ liệu giữa 2 danh sách, hoặc các giá trị trong cùng 1 danh sách, ta có thể sử dụng hàm VLOOKUP kết hợp với hàm IF và hàm ISNA để đánh dấu các giá trị trùng lặp, sau đó sử dụng tính năng FILTER để lọc các giá trị trùng và tiến hành xử lý. Dưới đây là hướng dẫn chi tiết:
1. Công thức và cách sử dụng hàm VLOOKUP lọc trùng dữ liệu
Để sử dụng VLOOKUP lọc các giá trị trùng lặp dữ liệu giữa 2 danh sách với nhau. Ta thực hiện theo các bước sau:
- Bước 1: Tạo 1 cột mới bên cạnh cột dữ liệu cần kiểm tra trùng lặp.
- Bước 2: Tại ô đầu tiên cột mới nhập công thức hàm VLOOKUP:
- Công thức:
=IF(ISNA(VLOOKUP(giá trị tìm, cột so sánh, 1, FALSE)), "Không trùng", "Trùng") - Hàm VLOOKUP sẽ tìm giá trị tìm trong cột so sánh:
- Nếu VLOOKUP không tìm thấy giá trị thì hàm ISNA bọc ngoài sẽ trả về giá trị TRUE => Hàm IF sẽ trả về giá trị “Không trùng” tương ứng với giá trị đúng.
- Nếu VLOOKUP tìm thấy giá trị thì hàm INSA bọc ngoài sẽ trả về giá trị FALSE => hàm IF sẽ trả về giá trị “Trùng” tương ứng với giá trị sai.
- Công thức:
- Bước 3: Kéo công thức để áp dụng với các hàng khác => Ta sẽ thu được danh sách đánh dấu các giá trị “Trùng” và “Không trùng“.
- Bước 4: Sử dụng tính năng FILTER để tạo bộ lọc tại cột mới => bấm chọn giá trị “Trùng” để lọc danh sách các giá trị trùng lặp.
>>> Xem thêm:
- Cách sử dụng hàm VLOOKUP 2 điều kiện (Ví dụ chi tiết)
- Hướng dẫn cách dùng hàm VLOOKUP giữa 2 Sheet trong Excel
- Cách kết hợp hàm VLOOKUP với hàm IF (Kèm ví dụ minh họa thực tế)
2. Ví dụ minh họa hàm VLOOKUP lọc trùng dữ liệu
Để hiểu rõ hơn, ta sẽ đi vào ví dụ thực tế hay gặp để thực hiện lọc trùng dữ liệu với hàm VLOOKUP như sau:
Ví dụ: Ta có 2 danh sách A và B về Mã KH và Tên KH như sau:
Yêu cầu: Tìm các khách hàng trong danh sách A trùng với danh sách B.
Thực hiện:
- Tại cột C => Tạo cột “Đánh dấu“
- Tại ô
C3điền công thức sau:=IF(ISNA(VLOOKUP(A3; $E$3:$E$8; 1; FALSE)); "Không trùng"; "Trùng")- Trong đó:
A3là giá trị mã khách hàng ở Danh sách AE3:E8là vùng dữ liệu mã khách hàng ở Danh sách B- => Excel sẽ tra cứu dữ liệu mã khách hàng
A3trong danh sáchE3:E8, nếu không tìm thấy thì trả về giá trị “Không trùng“, nếu tìm thấy thì trả về giá trị “Trùng“.
- Trong đó:
- Kéo công thức từ ô C3 đến các dòng C8.
- Sử dụng Filter (chọn dòng tiêu đề cần đặt bộ lọc => vào Home => chọn Filter) để lọc các giá trị “Trùng“.



Đến đây ta đã thu được các giá trị trùng lặp giữa 2 danh sách. Ta có thể xử lý tiếp theo như xóa, sao chép các dữ liệu trùng lặp này.
Ngoài ra, trong trường hợp ta muốn tìm dữ liệu trùng lặp trong cùng 1 danh sách thì ta có thể sử dụng VLOOKUP bằng cách sau:
- Bước 1: Sử dụng hàm COUNTIF và hàm IF để đánh dấu các giá trị có số lần xuất hiện của giá trị cần kiểm tra trong danh sách lớn hơn 1.
- Ví dụ công thức:
=IF(COUNTIF($A$2:$A$100, A2)>1, "Trùng", "Không trùng") - Excel sẽ đếm giá trị ô A2 trong danh sách
A2:A100và đánh dấu là “Trùng” khi số lần xuất hiện > 1, đánh dấu là “Không trùng” nếu nó <= 1.
- Ví dụ công thức:
- Bước 2: Sử dụng hàm VLOOKUP để tra cứu thông tin chi tiết của các giá trị “Trùng” sang bảng khác.
- Ví dụ công thức:
=IF(B2="Trùng", VLOOKUP(A2, $D$2:$E$100, 2, FALSE), "")
- Ví dụ công thức:
Trên đây là công thức và cách sử dụng hàm VLOOKUP để lọc trùng dữ liệu. Chúc các bạn áp dụng thành công!

