Mục lục
Hướng dẫn cho biết cách sử dụng công thức VLOOKUP trong Excel để so sánh hai cột nhằm trả về giá trị chung (khớp) hoặc tìm dữ liệu bị thiếu (khác biệt).
Khi bạn có dữ liệu ở hai cột danh sách khác nhau, bạn có thể thường xuyên phải so sánh chúng để xem thông tin nào bị thiếu trong một trong các danh sách hoặc dữ liệu nào có trong cả hai danh sách. Việc so sánh có thể được thực hiện theo nhiều cách khác nhau - việc sử dụng phương pháp nào phụ thuộc vào chính xác những gì bạn muốn từ phương pháp đó.
Cách so sánh hai cột trong Excel bằng VLOOKUP
Khi nào bạn có hai cột dữ liệu và muốn tìm xem điểm dữ liệu nào từ danh sách này tồn tại trong danh sách kia, bạn có thể sử dụng hàm VLOOKUP để so sánh danh sách cho các giá trị chung.
Để tạo công thức VLOOKUP trong dạng cơ bản, đây là những gì bạn cần làm:
- Đối với lookup_value (đối số thứ nhất), hãy sử dụng ô trên cùng trong Danh sách 1.
- Đối với table_array (đối số thứ 2), cung cấp toàn bộ Danh sách 2.
- Đối với col_index_num (đối số thứ 3), hãy sử dụng 1 vì chỉ có một cột trong mảng.
- Đối với range_lookup (đối số thứ 4), đặt FALSE - đối sánh chính xác.
Giả sử bạn có tên của những người tham gia trong cột A (Danh sách 1) và tên của những người đó đã qua vòng loại tại cột B (Danh sách 2). Bạn muốn so sánh 2 danh sách này để xác định những người tham gia nào từ Nhóm A đã đến được sự kiện chính. Để làm điều này, sử dụng như saucông thức.
=VLOOKUP(A2, $C$2:$C$9, 1, FALSE)
Công thức chuyển đến ô E2, sau đó bạn kéo công thức xuống qua nhiều ô bằng số mục trong Danh sách 1.
Xin lưu ý rằng table_array bị khóa với các tham chiếu tuyệt đối ($C$2:$C$9) để nó không đổi khi bạn sao chép công thức vào các ô bên dưới.
Như bạn có thể thấy, tên của các vận động viên đủ tiêu chuẩn xuất hiện trong cột E. Đối với những người tham gia còn lại, lỗi #N/A xuất hiện cho biết tên của họ không có trong Danh sách 2.
Ngụy trang #N/ Một lỗi
Công thức VLOOKUP được thảo luận ở trên đáp ứng hoàn hảo mục tiêu chính của nó - trả về các giá trị chung và xác định các điểm dữ liệu bị thiếu. Tuy nhiên, nó đưa ra một loạt lỗi #N/A, điều này có thể gây nhầm lẫn cho người dùng thiếu kinh nghiệm khiến họ nghĩ rằng có điều gì đó không ổn với công thức.
Để thay thế lỗi bằng ô trống , hãy sử dụng VLOOKUP kết hợp với hàm IFNA hoặc hàm IFERROR theo cách này:
=IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "")
Công thức cải tiến của chúng tôi trả về một chuỗi trống ("") thay vì #N/ MỘT. Bạn cũng có thể trả lại văn bản tùy chỉnh của mình, chẳng hạn như "Không có trong danh sách 2", "Không có" hoặc "Không có". Ví dụ:
=IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "Not in List 2")
Đó là công thức VLOOKUP cơ bản để so sánh hai cột trong Excel. Tùy thuộc vào nhiệm vụ cụ thể của bạn, nó có thể được sửa đổi như minh họa trong các ví dụ khác.
So sánh hai cột trong các trang tính Excel khác nhau bằng VLOOKUP
Trong thực tế, các cột bạncần so sánh không phải lúc nào cũng trên cùng một trang tính. Trong một tập dữ liệu nhỏ, bạn có thể thử phát hiện sự khác biệt theo cách thủ công bằng cách xem hai trang tính cạnh nhau.
Để tìm kiếm trong một trang tính hoặc sổ làm việc khác bằng công thức, bạn phải sử dụng tham chiếu bên ngoài. Cách tốt nhất là bắt đầu nhập công thức vào trang tính chính của bạn, sau đó chuyển sang trang tính khác và chọn danh sách bằng chuột - một tham chiếu phạm vi thích hợp sẽ tự động được thêm vào công thức.
Giả sử Danh sách 1 là trong cột A trên Sheet1 và danh sách 2 trong cột A trên Sheet2 , bạn có thể so sánh hai cột và tìm kết quả khớp bằng công thức sau:
=IFNA(VLOOKUP(A2, Sheet2!$A$2:$A$9, 1, FALSE), "")
Để biết thêm thông tin, vui lòng xem:
- Vlookup từ trang tính khác
- Vlookup từ sổ làm việc khác
So sánh hai cột và trả về giá trị chung (khớp)
Trong các ví dụ trước, chúng ta đã thảo luận về công thức VLOOKUP ở dạng đơn giản nhất:
=IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "")
Kết quả của công thức đó là một danh sách các giá trị tồn tại trong cả cột và ô trống thay cho các giá trị không có trong cột thứ hai.
Để nhận danh sách các giá trị phổ biến không có khoảng trống, chỉ cần thêm bộ lọc tự động vào cột kết quả và lọc ra các khoảng trống.
Trong Excel for Microsoft 365 và Excel 2021, đó là hỗ trợ các mảng động, bạn có thể sử dụng hàm FILTER để sàng lọc các khoảng trống một cách linh hoạt. Đối với điều này, hãy sử dụng công thức IFNA VLOOKUP làm công thứctiêu chí cho FILTER:
=FILTER(A2:A14, IFNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE), "")"")
Xin lưu ý rằng trong trường hợp này, chúng tôi cung cấp toàn bộ Danh sách 1 (A2:A14) cho đối số lookup_value của VLOOKUP. Hàm so sánh từng giá trị tra cứu với Danh sách 2 (C2:C9) và trả về một mảng khớp và lỗi #N/A biểu thị các giá trị bị thiếu. Hàm IFNA thay thế các lỗi bằng các chuỗi trống và cung cấp kết quả cho hàm FILTER. Hàm này lọc ra các khoảng trống ("") và xuất ra một mảng kết quả phù hợp làm kết quả cuối cùng.
Ngoài ra, bạn có thể sử dụng hàm ISNA để kiểm tra kết quả của VLOOKUP và lọc các mục được đánh giá là SAI, tức là các giá trị khác với lỗi #N/A:
=FILTER(A2:A14, ISNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE))=FALSE)
Kết quả tương tự có thể đạt được với hàm XLOOKUP, làm cho công thức trở nên đơn giản hơn. Do khả năng XLOOKUP xử lý nội bộ lỗi #N/A (đối số if_not_found tùy chọn), chúng tôi có thể thực hiện mà không cần trình bao bọc IFNA hoặc ISNA:
=FILTER(A2:A14, XLOOKUP(A2:A14, C2:C9, C2:C9,"")"")
So sánh hai cột và tìm các giá trị còn thiếu (sự khác biệt)
Để so sánh 2 cột trong Excel để tìm sự khác biệt, bạn có thể tiến hành theo cách sau:
- Viết công thức cốt lõi để tìm kiếm cột đầu tiên giá trị từ Danh sách 1 (A2) trong Danh sách 2 ($C$2:$C$9):
VLOOKUP(A2, $C$2:$C$9, 1, FALSE)
- Nối giá trị công thức trên trong hàm ISNA để kiểm tra đầu ra của VLOOKUP để tìm lỗi #N/A. Trong trường hợp có lỗi, ISNA trả về TRUE, nếu không thì FALSE:
ISNA(VLOOKUP(A2,$C$2:$C$9, 1, FALSE))
- Sử dụng công thức ISNA VLOOKUP để kiểm tra logic của hàm IF. Nếu thử nghiệm đánh giá là TRUE (lỗi #N/A), hãy trả về một giá trị từ Danh sách 1 trong cùng một hàng. Nếu kiểm tra đánh giá là FALSE (tìm thấy kết quả khớp trong Danh sách 2), hãy trả về một chuỗi trống.
Công thức hoàn chỉnh có dạng sau:
=IF(ISNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE)), A2, "")
Để loại bỏ các khoảng trống, hãy áp dụng Bộ lọc của Excel như minh họa trong ví dụ trên.
Trong Excel 365 và Excel 2021, bạn có thể tự động lọc danh sách kết quả. Đối với điều này, chỉ cần đặt công thức ISNA VLOOKUP vào đối số include của hàm FILTER:
=FILTER(A2:A14, ISNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE)))
Một cách khác là sử dụng XLOOKUP cho tiêu chí - hàm trả về chuỗi trống ("") cho các điểm dữ liệu bị thiếu và bạn lọc các giá trị trong Danh sách 1 mà XLOOKUP trả về chuỗi trống (=""):
=FILTER(A2:A14, XLOOKUP(A2:A14, C2:C9, C2:C9,"")="")
Công thức VLOOKUP để xác định các giá trị khớp và khác nhau giữa hai cột
Nếu bạn muốn thêm nhãn văn bản vào danh sách đầu tiên cho biết giá trị nào có sẵn trong danh sách thứ hai và giá trị nào không, hãy sử dụng công thức VLOOKUP cùng với Hàm IF và ISNA/ISERROR.
Ví dụ: để xác định những tên nằm trong cả hai cột A và D và những tên chỉ nằm trong cột A, công thức là:
=IF(ISNA(VLOOKUP(A2, $D$2:$D$9, 1, FALSE)), "Not qualified", "Qualified")
Ở đây, hàm ISNA bắt lỗi #N/A do VLOOKUP tạo ra và chuyển kết quả trung gian đó cho hàm IF để nótrả về văn bản đã chỉ định nếu có lỗi và một văn bản khác để tra cứu thành công.
Trong ví dụ này, chúng tôi đã sử dụng nhãn "Không đủ tiêu chuẩn"/"Đủ tiêu chuẩn" phù hợp với tập dữ liệu mẫu của chúng tôi. Bạn có thể thay thế chúng bằng "Không có trong danh sách 2"/"Trong danh sách 2", "Không có"/"Có sẵn" hoặc bất kỳ nhãn nào khác mà bạn thấy phù hợp.
Công thức này tốt nhất nên được chèn vào một cột liền kề với Danh sách 1 và được sao chép qua nhiều ô tương ứng với số mục trong danh sách của bạn.
Một cách khác để xác định các kết quả trùng khớp và khác biệt trong 2 cột là sử dụng hàm MATCH:
=IF(ISNA(MATCH(A2, $D$2:$D$9, 0)), "Not in List 2", "In List 2")
So sánh 2 cột và trả về giá trị từ cột thứ ba
Khi làm việc với các bảng chứa dữ liệu liên quan, đôi khi bạn có thể cần so sánh hai cột trong hai bảng khác nhau và trả về một giá trị phù hợp từ một cột khác. Trên thực tế, đây là mục đích sử dụng chính của hàm VLOOKUP, mục đích mà nó được thiết kế.
Ví dụ: để so sánh tên trong cột A và D trong hai bảng bên dưới và trả về thời gian từ cột E , công thức là:
=VLOOKUP(A3, $D$3:$E$10, 2, FALSE)
Để ẩn lỗi #N/A, hãy sử dụng giải pháp đã được chứng minh - hàm IFNA:
=IFNA(VLOOKUP(A3, $D$3:$E$10, 2, FALSE), "")
Thay vì để trống, bạn có thể trả về bất kỳ văn bản nào bạn muốn cho các điểm dữ liệu bị thiếu - chỉ cần nhập văn bản đó vào đối số cuối cùng. Ví dụ:
=IFNA(VLOOKUP(A3, $D$3:$E$10, 2, FALSE), "Not available")
Bên cạnh hàm VLOOKUP, tác vụ có thể được hoàn thành với một số hàm tra cứu khác.
Cá nhân tôi muốn sử dụng hàm INDEX linh hoạt hơnCông thức MATCH:
=IFNA(INDEX($E$3:$E$10, MATCH(A3, $D$3:$D$10, 0)), "")
Hoặc sử dụng phiên bản kế tiếp hiện đại của VLOOKUP - hàm XLOOKUP, có sẵn trong Excel 365 và Excel 2021:
=XLOOKUP(A3, $D$3:$D$10, $E$3:$E$10, "")
Để lấy tên của những người tham gia đủ điều kiện từ nhóm A và kết quả của họ, chỉ cần lọc ra các ô trống trong cột B:
=FILTER(A3:B15, B3:B15"")
Công cụ so sánh
Nếu bạn thường xuyên so sánh tệp hoặc dữ liệu trong Excel, những công cụ thông minh này có trong Ultimate Suite của chúng tôi có thể tiết kiệm thời gian của bạn rất nhiều!
So sánh Bảng - cách nhanh chóng để tìm các giá trị trùng lặp (khớp) và giá trị duy nhất (khác biệt) trong hai tập dữ liệu bất kỳ chẳng hạn như cột, danh sách hoặc bảng.
So sánh hai trang tính - tìm và đánh dấu sự khác biệt giữa hai trang tính.
So sánh nhiều trang tính - tìm và đánh dấu sự khác biệt trong nhiều trang tính cùng một lúc .
Sách làm việc thực hành để tải xuống
Vlookup trong Excel để so sánh các cột - ví dụ (tệp .xlsx)