Trong bài viết này, Học Excel Online sẽ hướng dẫn bạn cách so sánh 2 chuỗi chữ trong Excel trong các trường hợp không phân biệt được chữ hoa, chữ thường, tìm kiếm từ giống nhau. Bạn sẽ học được các công thức để so sánh 2 ô thông qua giá trị của ô, độ dài của đoạn văn bản, hoặc số lần xuất hiện của 1 ký tự đặc biệt, cũng như so sánh nhiều ô.
Khi sử dụng Excel để phân tích dữ liệu, độ chính xác là yếu tố quan trọng nhất. Thông tin sai lệch có thể dẫn đến chậm deadlines, phán đoán nhầm xu hướng, quyết định sai lầm, thâm hụt doanh thu.
Các công thức của Excel luôn luôn đúng, nhưng kết quả có thể sai do trong hệ thống có dữ liệu lỗi. Trong trường hợp này, biện pháp duy nhất là kiểm tra dữ liệu và độ chính xác. Nếu chỉ so sánh 2 ô thì làm theo phương pháp thủ công sẽ không có vấn đề gì, nhưng chỉ ra sự khác nhau giữa hàng trăm, hàng ngàn chuỗi chữ thì phương pháp này là không thể.
Bài viết sẽ giúp bạn tự động hoá công việc so sánh các ô chán ngắt và dễ mắc lỗi này, đồng thời hướng dẫn công thức hợp lý nhất trong từng trường hợp cụ thể.
Xem nhanh
Có 2 cách khác nhau để so sánh chuỗi trong Excel tuỳ vào việc bạn muốn tìm kiếm không phân biệt hay phân biệt chữ viết hoa, viết thường.
Để so sánh 2 ô trong Excel không quan tâm đến chữ hoa, chữ thường, bạn dùng công thức như sau:
=A1=B1
A1, B1 là ô mà bạn đang so sánh. Kết quả của công thức là TRUE hoặc FALSE.
Nếu bạn muốn kết quả thể hiện sự giống hoặc khác nhau là những cụm từ của riêng bạn, thêm cụm đó vào công thức hàm IF như sau:
=IF(A1=B1, “Equal”, “Not equal”)
Như bạn thấy trong hình dưới đây, công thức có thể so sánh chuỗi chữ, ngày và số.
Với một số trường hợp, yêu https://beachyspharmacy.com antibiotics cầu không chỉ so sánh chữ trong 2 mà còn so sánh chữ hoa, chữ thường, thì việc so sánh có thể dùng hàm EXACT trong Excel.
EXACT (chuỗi văn bản 1, chuỗi văn bản 2)
Nếu chuỗi văn bản 1 và chuỗi văn bản 2 ở trong 2 ô mà bạn cần so sánh, giả sử ô A2 và B2 thì công thức như sau:
=EXACT(A2, B2)
Kết quả, bạn sẽ nhận được TRUE nếu chuỗi chữ khớp nhau hoàn toàn cả về mặt chữ hoa, chữ thường còn không sẽ là FALSE.
Nếu bạn muốn hàm EXACT cho ra kết quả khác TRUE hoặc FALSE thì dùng công thức IF và đánh cụm từ mà bạn muốn nếu kết quả đúng và sai:
=IF(EXACT(A2 ,B2), “Exactly equal”, “Not equal”)
Hình dưới miêu tả kết quả trong trường hợp so sánh phân biệt chữ hoa, chữ thường:
Xem thêm: khóa học excel kế toán
Để so sánh nhiều hơn 2 ô trong 1 hàng, dùng công thức như ví dụ trên và kết hợp thêm AND. Chi tiết như sau:
Tuỳ vào cách bạn muốn thể hiện kết quả như thế nào, dùng 1 trong số những công thức sau:
=AND(A2=B2, A2=C2)
Hoặc
=IF(AND(A2=B2, A2=C2), “Equal”, “Not equal”)
Công thức AND trả về TRUE nếu tất cả các ô chứa giá trị giống nhau, FALSE nếu 1 ô chứa giá trị khác. Công thức IF giúp bạn viết kết quả bằng từ của riêng bạn, trong ví dụ này là “Equal” và “Not equal”.
Trong hình dưới, công thức đúng với mọi kiểu dữ liệu – chữ, số, ngày.
Để so sánh nhiều chuỗi xem chúng có giống nhau hoàn toàn không, dùng 1 trong số các công thức sau:
=AND(EXACT(A2,B2), EXACT(A2, C2))
Hoặc
=IF(AND(EXACT(A2,B2), EXACT(A2, C2)),”Exactly equal”, “Not equal”)
Cũng giống ví dụ trước, công thức đầu tiên cho ra giá trị TRUE – FALSE, công thức thứ 2 cho ra kết quả mà bạn đặt tên riêng.
Những ví dụ dưới sẽ hướng dẫn bạn cách xác định các ô trong 1 dãy có chứa đoạn văn bản giống như đoạn văn bản trong ô mẫu.
Nếu chữ hoa hay chữ thường không quan trọng, bạn có thể dùng công thức sau để so sánh các ô với mẫu:
ROWS(dãy ô)*COLUMNS(dãy ô)=COUNTIF(dãy ô, ô mẫu)
Trong kiểm tra logic của hàm IF, bạn so sánh 2 số:
Giả sử đoạn văn bản mẫu có ô C2 và chuỗi để so sánh ở các ô ở khoảng A2:B6, công thức sẽ như sau:
=ROWS(A2:B6)*COLUMNS(A2:B6)=COUNTIF(A2:B6,C2)
Để kết quả hiển thị thân thiện với người dùng hơn, ví dụ như “All match” hoặc “Not all match” thay vì TRUE và FALSE, dùng hàm IF như chúng ta đã làm ở các ví dụ trước.
=IF(ROWS(A2:B6)*COLUMNS(A2:B6)=COUNTIF(A2:B6,C2),”All match”, “Not all match”)
Như đã thấy ở hình trên, công thức đúng với chuỗi văn bản, ngày và số.
Nếu chữ hoa, chữ thường quan trọng, bạn có thể sử dụng công thức Mảng sau để so sánh các ô với mẫu:
IF(ROWS(dãy ô)*COLUMNS(dãy ô)=SUM(–EXACT(ô mẫu, dãy ô)), “từ_kết_quả_nếu _trùng”, ” từ_kết_quả_nếu _không_trùng “)
Với khoảng ô từ A2:B6 mà đoạn văn bản mẫu trong ô C2, công thức sẽ thành như sau:
=IF(ROWS(A2:B6)*COLUMNS(A2:B6)=SUM(–EXACT(C2, A2:B6)), “All match”, “Not all match”)
Không giống các công thức thông thường, công thức Mảng được thực hiện bằng cách nhấn cụm Ctrl + Shift + Enter. Nếu nhấn đúng, Excel sẽ để công thức Mảng trong dấu ngoặc móc như trong hình:
Đôi khi bạn cần kiểm tra xem độ dài chuỗi chữ trong mỗi hàng có bằng nhau không. Công thức cho yêu cầu này rất đơn giản. Đầu tiên, bạn lấy độ dài chuỗi chữ trong 2 ô bằng cách dùng hàm LEN, sau đó so sánh các con số.
Giả sử đoạn chữ cần so sánh ở ô A2 và B2, bạn có thể dùng 1 trong số các công thức sau:
=LEN(A2)=LEN(B2)
Hoặc
=IF(LEN(A2)=LEN(B2), “Equal”, “Not equal”)
Như bạn đã biết, công thức thứ 1 trả kết quả là TRUE/FALSE, còn công thức thứ 2 là từ kết quả của riêng bạn.
Với hình trên, công thức đúng với đoạn văn bản, số.
Mẹo nhỏ:
Nếu 2 đoạn văn bản dường như giống nhau lại cho ra độ dài khác nhau, thì vấn đề có thể là do dấu cách ở trước hoặc sau ở 1 hoặc cả 2 ô. Trong trường hợp này, loại bỏ dấu cách thừa bằng cách sử dụng hàm TRIM.
Đây là ví dụ cuối cùng trong bài hướng dẫn này, thể hiện cách làm cho 1 công việc cụ thể. Giả sử bạn có 2 cột chuỗi chữ có chứa 1 ký tự quan trọng. Mục tiêu của bạn là kiểm tra xem trong 2 cột ở mỗi hàng, số lần xuất hiện của ký tự đó có bằng nhau hay không.
Để hiểu rõ hơn, bạn hãy xem ví dụ sau. Bạn có 2 danh sách giao hàng (cột B) và nhận hàng (cột C). Mỗi hàng chứa các danh sách đơn hàng cho 1 mặt hàng cụ thể, mặt hàng được phân biệt bằng mã riêng và mã được liệt kê ở cột A (xem hình bên dưới). Bạn muốn chắc chắn rằng trong mỗi hàng, có chứa số lượng hàng giao và hàng nhận bằng nhau, với mã cụ thể.
Để giải quyết vấn đề này, viết công thức với logic như sau.
SUBSTITUTE(A1, ký_hiệu_để_đếm,””)
LEN(cell 1) – LEN(SUBSTITUTE(cell 1, character_to_count, “”))
Và
LEN(cell 2) – LEN(SUBSTITUTE(cell 2, character_to_count, “”))
LEN(cell 1) – LEN(SUBSTITUTE(cell 1, character_to_count, “”))=
LEN(cell 2) – LEN(SUBSTITUTE(cell 2, character_to_count, “”))
Trong ví dụ của chúng ta, mã phân biệt ở ô A2, và chuỗi chữ để so sánh ở ô B2 và C2. Thể nên công thức sẽ là:
=LEN(B2)-LEN(SUBSTITUTE(B2,$A2,””))=LEN(C2)-LEN(SUBSTITUTE(C2,$A2,””))
Công thức trả TRUE nếu ô B2 và C2 chứa số lần xuất hiện của ký tự trong ô A2 bằng nhau, nếu không thì FALSE. Đổi thành kết quả có ích hơn với người dùng, bạn dùng hàm IF:
=IF(LEN(B2)-LEN(SUBSTITUTE(B2, $A2,””))=LEN(C2)-LEN(SUBSTITUTE(C2, $A2,””)), “Equal”, “Not equal”)
Như bạn đã thấy, công thức hoàn toàn phù hợp ngay cả khi có những trường hợp sau:
Như vậy, blog.hocexcel.online đã hướng dẫn các bạn cách cách so sánh chuỗi trong Excel. Cảm ơn các bạn đã đọc và chúc các bạn thành công!
Ngoài ra để ứng dụng Excel vào công việc một cách hiệu quả thì bạn còn phải sử dụng tốt các hàm, các công cụ khác của Excel:
Một số hàm cơ bản thường gặp như:
Một số công cụ hay sử dụng như:
Rất nhiều kiến thức phải không nào? Toàn bộ những kiến thức này các bạn đều có thể học được trong khóa học EX101 – Excel từ cơ bản tới chuyên gia của Học Excel Online. Đây là khóa học giúp bạn hệ thống kiến thức một cách đầy đủ, chi tiết. Hơn nữa không hề có giới hạn về thời gian học tập nên bạn có thể thoải mái học bất cứ lúc nào, dễ dàng tra cứu lại kiến thức khi cần. Hiện nay hệ thống đang có ưu đãi rất lớn cho bạn khi đăng ký tham gia khóa học. Chi tiết xem tại: HocExcel.Online