Cách Lọc Dữ Liệu Trùng Trong 2 File Excel

Trong công việc quản lý dữ liệu, việc tìm và xử lý dữ liệu trùng lặp giữa hai bảng tính Excel là một nhu cầu phổ biến. Dữ liệu trùng lặp không những làm tăng độ lộn xộn, làm cho báo cáo không chính xác mà còn tốn thời gian cho việc phân tích và báo cáo. Bài viết này sẽ cung cấp một loạt các phương pháp thực tiễn, chi tiết và dễ áp dụng để lọc dữ liệu trùng lặp trong hai file Excel, bao gồm cách sử dụng công cụ tích hợp, hàm công thức, Power Query, và thậm chí VBA khi cần xử lý dữ liệu lớn.

Chú ý: Để đạt hiệu quả tối ưu, bạn nên sao lưu dữ liệu gốc trước khi thực hiện bất kỳ thao tác nào.

1. Nắm vững khái niệm dữ liệu trùng lặp

  • Dữ liệu trùng lặp: Khi một hoặc nhiều bản ghi xuất hiện nhiều lần trong cùng một bảng tính hoặc giữa hai bảng tính.
  • Dữ liệu trùng lặp giữa hai file: Khi một bản ghi tồn tại trong file A và file B, nhưng các trường dữ liệu có thể chưa hoàn toàn giống nhau (ví dụ: có sự khác biệt trong định dạng ngày tháng hoặc khoảng trắng).

Hiểu rõ khái niệm này giúp bạn xác định tiêu chí tìm kiếm trùng lặp (bản ghi hoàn toàn giống nhau hay chỉ cần một số trường nhất định).

2. Chuẩn bị dữ liệu

2.1 Định dạng dữ liệu

  • Đảm bảo tất cả cột dữ liệu cần so sánh được định dạng đúng (ví dụ: cột ngày tháng là dạng ngày, số tiền là số).
  • Loại bỏ khoảng trắng thừa bằng cách dùng hàm TRIM() trong Excel trước khi thực hiện so sánh.

2.2 Đặt tên phạm vi

  • Đặt tên cho từng vùng dữ liệu (Range Name) giúp công thức và Power Query dễ quản lý. Ví dụ: tbl_A và tbl_B.

3. Phương pháp 1: Sử dụng Conditional Formatting

3.1 So sánh trong cùng một file

  1. Chọn vùng dữ liệu trong file A.
  2. Vào Home → Conditional Formatting → New Rule → Use a formula to determine which cells to format.
  3. Nhập công thức:
    excel =COUNTIF($A:$A, $A1)>1
  4. Định dạng màu sắc để dễ nhìn.

3.2 So sánh giữa hai file

  • Mở cả hai file, copy một bảng dữ liệu vào file hiện tại (đặt dưới dạng bảng).
  • Sử dụng công thức COUNTIF() tương tự, chỉ thay đổi phạm vi dữ liệu tham chiếu.

Ưu điểm: Nhanh chóng, không cần công cụ bổ sung.
Nhược điểm: Không thích hợp với dữ liệu lớn (>10k dòng).

4. Phương pháp 2: Sử dụng hàm công thức nâng cao

4.1 Hàm VLOOKUP hoặc XLOOKUP

  • Công thức:
    excel =IFERROR(XLOOKUP(A2, tbl_BKey, tbl_BKey, "Không trùng"), "Trùng")
    Key là cột dùng làm khóa duy nhất (ví dụ: Mã khách hàng).

4.2 Hàm MATCH và INDEX

  • Công thức:
    excel =IF(ISNUMBER(MATCH(A2, tbl_BKey, 0)), "Trùng", "Không trùng")

4.3 Hàm COUNTIFS cho مہ

  • Khi cần so sánh nhiều trường:
    excel =IF(COUNTIFS(tbl_BKey, A2, tbl_BName, B2) > 0, "Trùng", olona)

Lưu ý: Sử dụng TRIM() và CLEAN() để tránh lỗi do dữ liệu chứa ký tự thừa.

5. Phương pháp 3: Sử dụng Power Query

Power Query (trong Excel 2026 trở đi) là công cụ mạnh mẽ để trích xuất, biến đổi dữ liệu (ETL). Dưới đây là quy trình chi tiết.

5.1 Nhập dữ liệu vào Power Query

  1. Chọn Data → Get Data → From File → From Workbook.
  2. Chọn file A, chọn sheet医生, click Transform Data.
  3. Lặp lại với file B.

5.2 Chuẩn bị dữ liệu

  • Thêm cột “Source” để ghi nguồn file.
  • Dùng Remove Duplicates trong Power Query để loại bỏ bản ghi trùng trong từng bảng riêng biệt (nếu cần).

5.3 Kết hợp hai bảng

Cách Lọc Dữ Liệu Trùng Trong 2 File Excel
Cách Lọc Dữ Liệu Trùng Trong 2 File Excel
  • Sử dụng Merge Queries (tùy chọn Left Anti Join, Right Anti Join, Full Outer Join, tùy mục đích).

5.3.1 Tìm dữ liệu trùng

  • Left Anti Join: Lấy bản ghi có trong A nhưng không có trong B.
  • Right Anti Join: Lấy bản ghi có trong B nhưng không có trong A.
  • Full Outer Join: Kết hợp cả hai, với cột “Merge” cho biết trùng hay không.

5.4 Xử lý dữ liệu trùng

  • Để lọc ra bản ghi trùng:
  • Thêm cột tùy chỉnh với công thức:
    m if Merge = null then "Không trùng" else "Trùng"
  • Lọc theo cột này.

5.5 Tải dữ liệuагылазаашьа

  • Khi hoàn thành, click Close & Load → Only Create Connection nếu bạn muốn dùng dữ liệu trong công thức hoặc báo cáo PivotTable.

Ưu điểm: Đối với dữ liệu lớn, Power Query nhanh hơn và dễ dàng tái sử dụng.
Nhược điểm: Đòi hỏi kiến thức về M language và truy cập Power Query.

6. Phương pháp 4: Sử dụng VBA (Macro)

V’wina khi bạn cần compleet tự động hóa hoặc làm việc với rất nhiều file, VBA là lựa chọn tốt.

6.1 Mẫu Macro đơn giản

Sub FindDuplicatesBetweenTwoFiles() Dim wsA As Worksheet, wsB As Worksheet Dim rngA As Range, rngB As Range Dim cell As Range, found As Range Set wsA = Workbooks("FileA.xlsx").Sheets("Sheet1") Set wsB = Workbooks("FileB.xlsx").Sheets("Sheet1") Set rngA = wsA.Range("A2:A" & wsA.Cells(wsA.Rows.Count, "A").End(xlUp).Row) Set rngB = wsB.Range("A2:A" & wsB.Cells(wsB.Rows.Count, "A").End(xlUp).Row) For Each cell In rngA Set found = rngB.Find(What:=cell.Value, LookIn:=xlValues, LookAt:=xlWhole) If Not found Is Nothing Then cell.Interior.Color = vbYellow found.Interior.Color = vbYellow End If Next cell
End Sub
  • Giải thích: Macro này duyệt từng ô trong cột A của file A, tìm kiếm giá trị tương ứng trong file B. Nếu tìm thấy, tô màu vàng cho cả hai ô.

6.2 Tối ưu hóa cho dữ liệu lớn

  • Sử dụng Dictionary để lưu trữ dữ liệu từ file B, giảm thời gian tìm kiếm.
  • Tắt tính năng ScreenUpdating và Calculation trước khi chạy macro.
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
...
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True

7. Phương pháp 5: Sử dụng công cụ bên thứ ba

Có một số phần mềm và add-in hỗ trợ kiểm tra dữ liệu trùng lặp:

  • Ablebits Duplicate Remover: Add-in mạnh mẽ cho Excel, hỗ trợ lọc, xóa trùng lặp giữa các sheet/file.
  • Kutools for Excel: Cung cấp công cụ “Find Duplicate Rows” và “Compare Sheets”.
  • OpenRefine_PR: Mở rộng cho EzData, không trực tiếp trên Excel nhưng có thể xuất dữ liệu qua CSV.

8. Thực hành: Một ví dụ hoàn chỉnh

Giả sử bạn có hai file:

  • Customers_A.xlsx với dữ liệu khách hàng, cột CustomerID, Name, Email.
  • Customers_B.xlsx với dữ liệu khách hàng, cột tương tự.

Bạn muốn tìm tất cả khách hàng đã xuất hiện trong cả hai file.

8.1 Bước 1: Chuẩn bị dữ liệu

  • Mở cả hai file, đảm સમયમાં cột CustomerID là số nguyên.
  • Xóa khoảng trắng thừa: =TRIM(CustomerID).

8.2 Bước 2: Sử dụng Power Query

  1. Import cả hai bảng vào Power Query.
  2. Thêm cột “Source” để ghi file.
  3. Merge Queries bằng Full Outer Join trên cột CustomerID.
  4. Thêm cột tùy chỉnh:
    m if Source1 <> null and Source2 <> null then "Trùng" else "Không trùng"
  5. Lọc cột “Trùng” để lấy bản ghi trùng.

8.3 Bước 3: Xuất dữ liệu

  • Click Close & Load → To Worksheet.
  • Bạn sẽ có bảng mới chỉ chứa dữ liệu trùng lặp.

9. Kiểm tra tính toàn vẹn dữ liệu

  • Sau khi lọc, hãy kiểm tra lại số lượng bản ghi trùng với số lượng ban đầu.
  • Sử dụng hàm COUNTIF() để xác minh:
    excel =COUNTIF(tbl_ACustomerID, tbl_BCustomerID)

10. Lưu ý khi làm việc với dữ liệu lớn

  1. Sử dụng 64-bit Excel: Cho phép xử lý bộ nhớ lớn hơn.
  2. Phân chia dữ liệu: Nếu có hàng triệu dòng, chiacta bố cục thành các bảng nhỏ hơn.
  3. Dùng Power Pivot: Tích hợp mô hình dữ liệu, hỗ trợ xử lý nhanh hơn.
  4. Tránh tính năng tự động cập nhật: Khi làm việc với macro hoặc Power Query, tắt tính năng tự động tính toán.

11. Tối ưu hóa VBA cho dữ liệu lớn

  • Sử dụng Dictionary:
    “`vb
    Dim dict As Object
    Set dict = CreateObject(“Scripting.Dictionary”)
    For Each cell In rngB
    dict(cell.Value) = 1
    Next cell

For Each cell In rngA
If dict.exists(cell.Value) Then
cell.Interior.Color = vbYellow
pert
Next cell
“`

  • Giải pháp này giảm độ phức tạp từ O(nm) xuống O(n+m).

12. Bảo mật và quyền riêng tư

  • Khi làm việc với dữ liệu nhạy cảm, đảm bảo file được bảo vệ bằng mật khẩu.
  • Excel hỗ trợ mã hóa file: File → Info → Protect Workbook → Encrypt with Password.

13. Kết luận

Lọc dữ liệu trùng lặp giữa hai file Excel là một kỹ năng cần thiết trong quản trị dữ liệu. Tùy vào quy mô dữ liệu và nhu cầu, bạn có thể chọn từ các phương pháp đơn giản như Conditional Formatting, nâng cao như hàm công thức, hoặc mạnh mẽ hơn với Power Query, VBA. Dưới đây là tóm tắt nhanh:

Phương phápƯu điểmNhược điểm
Conditional FormattingNhanh, dễ dùngPhụ thuộc vào kích thước dữ liệu
Hàm công thứcLinh hoạt, tùy chỉnhCần công thức phức tạp
Power QueryXử lý dữ liệu lớn, tái sử dụngYêu cầu biết M language
VBATự động hóa, tùy chỉnhCần lập trình
Add-in bên thứ baDễ dàng, tính năng caoCó phí và phụ thuộc vào phần mềm

Bằng cách áp dụng những phương pháp trên, bạn sẽ có thể nhanh chóng nhận biết, lọc và xử lý dữ liệu trùng lặp, đồng thời nâng cao độ chính xác và hiệu quả công việc. Hãy nhớ luônYAN lưu trữ bản sao dữ liệu gốc và kiểm tra kỹ lưỡng sau mỗi thao tác. Chúc bạn thành công trong công việc quản trị dữ liệu!

⚠️
LƯU Ý QUAN TRỌNG: Miễn trừ trách nhiệm: Mặc dù chúng tôi luôn nỗ lực để đảm bảo tính chính xác và cập nhật của thông tin, nhưng các quy định về giáo dục và tuyển sinh có thể thay đổi theo thời gian. BigSchool không chịu trách nhiệm về bất kỳ sai sót nào hoặc kết quả phát sinh từ việc sử dụng thông tin trên trang này. Độc giả nên liên hệ trực tiếp với nhà trường hoặc cơ quan chức năng để có thông tin mới nhất. Ngoài ra, BigSchool tuyệt đối không bán sản phẩm, khóa học hay cung cấp dịch vụ được nhắc đến trong bài.

Viết một bình luận