So Sánh 2 Giá Trị Giống Nhau Trong Excel

Mục lục bài viết

Giới thiệu

Trong công việc quản lý dữ liệu, phân tích báo cáo hay lập kế hoạch, Excel luôn là công cụ không thể thiếu. Một trong những thao tác thường gặp là so sánh hai giá trị để xác nhận tính nhất quán, phát hiện lỗi, hoặc tìm kiếm những trường hợp trùng lặp. Khi giá trị cần so sánh có thể giống nhau hoặc khác nhau, người dùng thường muốn biết liệu hai ô hoặc hai vùng dữ liệu có hoàn toàn khớp nhau hay không. Việc này có thể được thực hiện bằng nhiều cách khác nhau: công thức đơn giản, định dạng có điều kiện, VBA, Power Query, hay thậm chí các công cụ bên ngoài như Power BI. Trong bài viết này, chúng ta sẽ đi sâu vào cách so sánh 2 giá trị giống nhau trong Excel, giới thiệu các phương pháp, kèm theo ví dụ thực tế và những lưu ý quan trọng.

1. Lý do cần so sánh 2 giá trị trong Excel

  1. Xác minh tính nhất quán dữ liệu – Khi dữ liệu được nhập từ nhiều nguồn, so sánh giúp phát hiện sai sót, thiếu sót.
  2. Phát hiện trùng lặp – Đối với danh sách khách hàng, sản phẩm, mã số, việc kiểm tra trùng lặp giúp chuẩn hóa dữ liệu.
  3. Tối ưu hóa bảng tính – Khi hai cột dữ liệu được tính toán từ các công thức khác nhau, so sánh giúp kiểm tra tính đúng đắn của công thức.
  4. Tạo báo cáo so sánh – Trong báo cáo tài chính, so sánh giữa kỳ hoặc giữa các bảng thường được yêu cầu.
  5. Kiểm tra dữ liệu nhập – Khi nhập dữ liệu thủ công, so sánh giúp người dùng nhanh chóng phát hiện lỗi.

2. Các phương pháp so sánh 2 giá trị trong Excel

2.1. Sử dụng công thức trực tiếp

2.1.1. Công thức IF

=IF(A1=B1, "Trùng nhau", "Không trùng nhau")
  • Giải thích: Hàm IF kiểm tra điều kiện A1=B1. Nếu đúng, trả về “Trùng nhau”, ngược lại “Không trùng nhau”.
  • Phân biệt: Nếu dữ liệu là số, việc so sánh sẽ chính xác. Nếu là văn bản, có thể cần chú ý khoảng trắng, chữ hoa/nhỏ.

2.1.2. Công thức EXACT

=EXACT(A1, B1)
  • Giải thích: Hàm EXACT trả về TRUE nếu hai chuỗi giống hệt nhau, bao gồm chữ hoa/nhỏ và khoảng trắng. Nếu không, trả về FALSE.
  • Ưu điểm: Phù hợp cho so sánh chuỗi có thể bao gồm ký tự đặc biệt, khoảng trắng.

2.1.3. Sử dụng công thức SUMPRODUCT

=SUMPRODUCT(--(A1=B1))=1
  • Giải thích: SUMPRODUCT chuyển điều kiện thành mảng số 1/0 và cộng lại. Đối với so sánh hai ô, kết quả là 1 nếu trùng, 0 nếu không.

2.1.4. Công thức CHOOSE + IF

=CHOOSE(IF(A1=B1, 1, 2), "Trùng", "Không trùng")
  • Giải thích: Sử dụng CHOOSE để trả về kết quả tùy theo điều kiện.

2.2. Định dạng có điều kiện (Conditional Formatting)

Định dạng có điều kiện giúp nhanh chóng nhận biết những ô có giá trị trùng nhau.

  1. Chọn vùng dữ liệu cần so sánh (ví dụ: cột A và B).
  2. Vào Home > Conditional Formatting > New Rule > Use a formula to determine which cells to format.
  3. Nhập công thức:

ubb =$A1=$B1

  1. Đặt màu nền hoặc kiểu chữ khác nhau để làm nổi bật.

2.2.1. Ví dụ: Đánh dấu ô trùng

  • Công thức: =A1=B1
  • Định dạng: Nền màu xanh lá.

2.2.2. Ví dụ: Nổi bật ô khác nhau

  • Công thức: =A1<>B1
  • Định dạng: Nền màu đỏ.

2.3. Sử dụng hàm VLOOKUP / XLOOKUP

Khi so sánh giữa hai danh sách dài, có thể dùng VLOOKUP hoặc XLOOKUP.

=IF(ISNUMBER(MATCH(A1, B:B, 0)), "Trùng", "Không trùng")
  • MATCH trả về vị trí trong cột B. Nếu tìm thấy, ISNUMBER là TRUE.

2.3.1. XLOOKUP

=IF(ISNA(XLOOKUP(A1, B:B, B:B, "")), "Không trùng", "Trùng")
  • XLOOKUP trả về giá trị tìm được Verkehrs.

2.4. Sử dụng Power Query

Power Query rất mạnh trong việc xử lý dữ liệu lớn và so sánh các bộ dữ liệu.

  1. Nhập dữ liệu vào hai bảng trong Power Query.
  2. Sử dụng Merge Queries để ghép dữ liệu dựa trên cột khóa.
  3. Chọn kiểu ghép Full Outer hoặc Inner tùy cần thiết.
  4. Kiểm tra cột kết quả: nếu có giá trị, là trùng.

2.4.1. Ví dụ: Merge hai bảng

  • Bảng A: CustomerID, Name.
  • Bảng B: CustomerID, Order.

Merge theo CustomerID. Nếu dữ liệu tồn tại trong cả hai bảng, sẽ có giá trị trong cột kết quả.

2.5. Sử dụng VBA (Visual Basic for Applications)

Với dữ liệu phức tạp hoặc yêu cầu tự động hoá, VBA là công cụ mạnh.

Sub SoSanhHaiGiaTri() Dim cellA As Range, cellB As Range Dim ws As Worksheet Set ws = ThisWorkbook.Sheets("Sheet1") For Each cellA In ws.Range("A1:A100") Set cellB = ws.Range("B" & cellA.Row) If cellA.Value = cellB.Value Then cellA.Interior.Color = vbGreen cellB.Interior.Color = vbGreen Else cellA.Interior.Color = vbRed cellB.Interior.Color = vbRed End If Next cellA
End Sub
  • Giải thích: Duyệt từng ô trong cột A và so sánh với ô tương ứng trong cột B. Nếu trùng, tô เค màu xanh, nếu không CRética đỏ.

2.6. Sử dụng hàm KHOA (FORMULATEXT) + Xử lý chuỗi

Đôi khi dữ liệu có thể chứa ký tự đặc biệt hoặc dấu cách. Sử dụng TRIM, CLEAN, UPPER để chuẩn hóa trước khi so sánh.

=IF(TRIM(UPPER(A1))=TRIM(UPPER(B1)), "Trùng", "Không trùng")
  • TRIM loại bỏ khoảng trắng thừa.
  • UPPER chuẩn hóa chữ hoa/nhỏ.

3. Các lưu ý khi so sánh dữ liệu trong Excel

3.1. Kiểm tra kiểu dữ liệu

  • Số: Excel có thể lưu trữ số dưới dạngStatics. Sự khác biệt nhỏ (0.000001) có thể gây ra lỗi so sánh. Cần làm tròn (ROUND) trước khi so sánh.
  • Chuỗi: Kiểm tra khoảng trắng, chữ hoa/nhỏ, ký tự đặc biệt.

3.2. Xử lý giá trị thiếu (blank)

  • Khi một ô trống, công thức =A1=B1 sẽ trả về TRUE nếu cả hai ô trống. Nếu muốn phân biệt, có thể dùng:

excel =IF(AND(A1<>"", B1<>""), A1=B1, "Một trong hai trống")

3.3. Định dạng số

  • Khi nhập số vào Excel, có thể có định dạng khác nhau (thập phân, phần trăm). Kiểm tra Appetite.

3.4. Độ chính xác của công thức

  • Khi so sánh số thực, nên dùng ROUND hoặc ABS để kiểm tra sai số:

excel =IF(ABS(A1-B1)<0.0001, "Trùng", "Không trùng")

3.5. Khi cần so sánh nhiều cột

  • Sử dụng công thức mảng hoặc hàm AND:

excel =IF(AND(A1=B1, C1=D1), "Trùng", "Không trùng")

3.6. Khi dữ liệu có thể thay đổi

  • Đặt công thức trong ô, sao chép và食品, hoặc sử dụng tính năng Dynamic Array trong Excel phiên bản mới.

4. Bài thực hành: So sánh danh sách khách hàng

Giả sử chúng ta có hai bảng dữ liệu khách hàng:

  • Bảng A (Sheet1): CustomerID, Name, Email.
  • Bảng B (Sheet2): CustomerID, Name, Email.

Mục tiêu: tìm ra những khách hàng có tên và email trùng nhau, và những khách hàng chỉ tồn tại trong một bảng.

So Sánh 2 Giá Trị Giống Nhau Trong Excel
So Sánh 2 Giá Trị Giống Nhau Trong Excel

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

ABC
CustomerIDNameEmail
101John Doejohn@example.com
102Jane Smithjane@example.com
103Bob Johnsonbob@example.com

Bảng B:

ABC
CustomerIDNameEmail
101John Doejohn@example.com
104Alice Brownalice@example.com
105David Leedavid@example.com

4.2. Bước 2: Sử dụng hàm VLOOKUP để kiểm tra tồn tại

Trong Sheets1, cột D:

=IF(ISNUMBER(MATCH(A2, Sheet2!$A$2:$A$100, 0)), "Có trong Sheet2", "Không có")

Kết quả:
– 101 → Có trong Sheet2
– 102 → Không có
– 103 → Không có

4.3. Bước 3: So sánh tên và email

Trong Sheets1, cột E:

=IF(AND(A2=VLOOKUP(A2, Sheet2!$A$2:$C$100, 1, FALSE), B2=VLOOKUP(A2, Sheet2!$A$2:$C$100, 2, FALSE), C2=VLOOKUP(A2, Sheet2!$A$2:$C$100, 3, FALSE)), "Trùng hoàn toàn", "Không trùng")
  • 101 → Trùng hoàn toàn
  • 102 → Không trùng
  • 103 → Không trùng

4.4. Bước 4: Đánh dấu bằng Conditional Formatting

  • Chọn cột E.
  • Conditional Formatting rule: =$E1="Trùng hoàn toàn", màu nền xanh lá.

4.5. Bước 5: Tạo báo cáo trùng lặp

Sử dụng hàm FILTER (Excel 365):

=FILTER(Sheet1!A2:C4, Sheet1!E2:E4="Trùng hoàn toàn")

Kết quả: danh sách khách hàng trùng lặp.

5. Mối quan hệ giữa so sánh và các công cụ phân tích dữ liệu

5.1. Power Pivot

  • Khi dữ liệu lớn, Power Pivot cho phép tạo mô hình dữ liệu và so sánh bằng DAX:

dax Tr сотрудников = IF(CustomerID = RELATED('Sheet2'CustomerID) && Name = RELATED('Sheet2'Name) && Email = RELATED('Sheet2'Email), "Trùng", "Không trùng")

5.2. Power BI

  • Sử dụng hàm INTERSECT để lấy tập hợp chung giữa hai bảng.

powerbi Trùng = INTERSECT(Table1, Table2)

5.3. Python + pandas

  • Đọc dữ liệu Excel, so sánh:

python import pandas as pd df1 = pd.read_excel('sheet1.xlsx') df2 = pd.read_excel('sheet2.xlsx') merged = pd.merge(df1, df2, on='CustomerID', 'Name', 'Email', how='inner')

6. Thực hành nâng cao: So sánh dữ liệu trong bảng tính động

6.1. Sử dụng hàm LET để tối ưu công thức

=LET( valA, A1, valB, B1, IF(valA=valB, "Trùng", "Không trùng")
)
  • LET giúp tránh tính toán lại giá trị nhiều lần.

6.2. Sử dụng hàm LAMBDA để tái sử dụng công thức

=DEFINE( LAMBDA(x, y, IF(x=y, "Trùng", "Không trùng"))
)
  • Sau khi định nghĩa, bạn có thể gọi SoSanh(A1, B1).

6.3. Bảng tính động với XLOOKUP và IFERROR

=IFERROR( IF(XLOOKUP(A1, B:B, B:B, "") = A1, "Trùng", "Không trùng"), "Không có giá trị"
)

7. Các tình huống thường gặp và cách giải quyết

Tình huốngVấn đềGiải pháp
Dữ liệu có khoảng trắng thừaSo sánh saiSử dụng TRIM
Dữ liệu có chữ hoa/nhỏ khác.TxtSo sánh saiSử dụng UPPER hoặc LOWER
Dữ liệu chứa ký tự đặc biệtSo sánh saiSử dụng CLEAN
Dữ liệu số có sai số thập phânSo sánh saiSử dụng ROUND hoặc ABS
Dữ liệu có giá trị trốngSo sánh saiKiểm tra ISBLANK
Dữ liệu thay đổi thường xuyênCông thức lỗiSử dụng bảng dữ liệu động (Table)

8. Kết luận

So sánh 2 giá trị trong Excel là một thao tác thiết yếu, dù bạn đang làm việc với dữ liệu nhỏ hay lớn. Excel cung cấp nhiều phương pháp khác nhau: từ công thức đơn giản, định dạng có điều kiện, Power Query, VBA, cho tới việc tích hợp với Power Pivot, Power BI hoặc Python. Việc chọn phương pháp phù hợp phụ thuộc vào độ phức tạp của dữ liệu, tần suất thực thi và mức độ tự động hoá cần thiết.

  • Nếu associated: Sử dụng công thức IF hoặc EXACT.
  • Nếu cần làm rõ nhanh: Dùng Conditional Formatting.
  • Nếu dữ liệu lớn: Power Query hoặc VBA.
  • Nếu dữ liệu liên tục thay đổi: Sử dụng Table + Dynamic Array.

Bên cạnh đó, luôn nhớ chuẩn hóa dữ liệu trước khi so sánh: loại bỏ khoảng trắng, chuẩn hóa chữ hoa/nhỏ, làm tròn số thực. Khi đã làm đúng,EMAIL, bạn sẽ tiết kiệm thời gian, giảm thiểu sai sót và nâng cao chất lượng dữ liệu trong công việc của mình.

Chúc bạn thành công khi áp dụng những kỹ thuật so sánh 2 giá trị giống nhau trong Excel vào các dự án thực tế!

⚠️
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