Đa số người học Excel với nhiều nhận xét đưa ra rằng excel là một hệ thống hàm chức năng, mỗi hàm chức năng không chỉ thực hiện các chức năng riêng biệt mà còn hỗ trợ kết hợp với nhau để thực hiện các bài toán khác nâng cao khác nhau. Excel cung cấp rất nhiều hàm tính để giúp bạn xử lý bảng dữ liệu nhanh chóng trong thời gian ngắn. Một trong những hàm quan trọng của Excel chính là hàm match. Nếu bạn chưa biết cách dùng hàm match trong excel, những lỗi thường gặp khi dùng hàm này, hãy cùng Unica theo dõi bài viết dưới đây nhé.
Hàm match trong excel là gì?
Hàm match trong excel là một hàm tìm kiếm, giúp bạn tìm vị trí của một giá trị trong một dãy hoặc bảng. Hàm match trả về số thứ tự của giá trị tìm được, tính từ đầu dãy hoặc bảng. Bạn có thể sử dụng hàm match để tra cứu giá trị trong một bảng chéo, hoặc kết hợp với các hàm khác như index, vlookup, hlookup để tra cứu giá trị theo hàng và cột.
Hàm match trong excel là một hàm tìm kiếm, giúp bạn tìm vị trí của một giá trị trong một dãy hoặc bảng
Cú pháp hàm Match trong Excel
Công thức match trong excel là:
= MATCH (lookup_value, lookup_array, [match_type])
Trong đó:
- lookup_value: là giá trị bạn muốn tìm kiếm trong dãy hoặc bảng. Giá trị này có thể là một số, một chuỗi, một ô tham chiếu, hoặc một công thức.
- lookup_array: là dãy hoặc bảng chứa các giá trị bạn muốn tìm kiếm. Dãy hoặc bảng này phải được sắp xếp theo thứ tự tăng dần hoặc giảm dần, nếu không hàm match sẽ không hoạt động chính xác.
- match_type: là một số tùy chọn cho biết bạn muốn tìm kiếm khớp chính xác hay khớp gần đúng. Giá trị này có thể là 1, 0, hoặc -1. Nếu bạn bỏ qua tham số này, excel sẽ mặc định là 1.
Cách dùng hàm match trong excel
Tùy vào giá trị của tham số match_type, bạn có thể sử dụng các loại hàm match khác nhau trong excel:
Khớp chính xác
Đây là loại hàm match cho bạn kết quả chính xác nhất. Bạn chỉ cần nhập giá trị 0 cho tham số match_type. Hàm match sẽ trả về số thứ tự của ô chứa giá trị lookup_value nếu tìm thấy, hoặc trả về lỗi #NA nếu không tìm thấy.
Ví dụ: Cho bảng dữ liệu 1:
Cho bảng dữ liệu
Yêu cầu: Tìm vị trí của nho trong bảng dữ liệu trên bằng hàm match.
Cách sử dụng hàm match trong excel:
Bước 1: Nhập công thức =MATCH(E3;A3:A6;0) vào ô E4.
Nhập công thức MATCH
Bước 2: Nhấn enter sẽ thu được kết quả là 3 tức là nho nằm ở vị trí thứ 3 trong bảng dữ liệu 1.
Kết quả sau khi nhập công thức
Note: Nếu bạn nhập tên một loại quả không có trong bảng, ví dụ thăng long, hàm match sẽ trả về lỗi #NA.
>>> Tất cả đều có trong cuốn sách "HƯỚNG DẪN THỰC HÀNH EXCEL TỪ CƠ BẢN ĐẾN NÂNG CAO"
Khớp gần đúng
Đây là loại hàm match cho bạn kết quả gần đúng nhất. Bạn có thể nhập giá trị 1 hoặc -1 cho tham số match_type. Hàm match sẽ trả về số thứ tự của ô chứa giá trị lookup_value nếu tìm thấy, hoặc trả về số thứ tự của ô chứa giá trị gần nhất nếu không tìm thấy.
Nếu bạn nhập giá trị 1, hàm match sẽ tìm kiếm từ trên xuống dưới, và trả về giá trị lớn nhất nhỏ hơn hoặc bằng lookup_value. Dãy hoặc bảng bạn tìm kiếm phải được sắp xếp theo thứ tự tăng dần.
Nếu bạn nhập giá trị -1, hàm match sẽ tìm kiếm từ dưới lên trên, và trả về giá trị nhỏ nhất lớn hơn hoặc bằng lookup_value. Dãy hoặc bảng bạn tìm kiếm phải được sắp xếp theo thứ tự giảm dần.
Ví dụ: Cho bảng dữ liệu 2:
Cho bảng dữ liệu
Yêu cầu: Tìm vị trí của sinh viên có điểm thi toán cao cấp gần nhất với điểm 7.8.
Cách dùng hàm match trong excel:
Bước 1: Đặt công thức =MATCH(7,8;B14:B18;1) trong ô D14.
Nhập công thức vào ô D14
Bước 2: Nhấn enter sẽ thu được kết quả là 1 tức là vị trí của sinh viên có điểm toán cao cấp gần nhất với 7.8 là nằm ở vị trí số 1.
Kết quả sau khi nhập công thức cuối
Khớp ký tự đại diện
Đây là loại hàm match cho bạn kết quả khớp với một mẫu nào đó. Bạn chỉ cần nhập giá trị 0 cho tham số match_type, và sử dụng các ký tự đại diện trong lookup_value. Các ký tự đại diện phổ biến trong excel là:
- Dấu sao (*): đại diện cho một chuỗi ký tự bất kỳ, có thể rỗng hoặc không.
- Dấu chấm hỏi (?): đại diện cho một ký tự bất kỳ.
- Dấu ngặc vuông ([]): đại diện cho một tập hợp các ký tự có thể xuất hiện.
Hàm match sẽ trả về số thứ tự của ô chứa giá trị khớp với mẫu lookup_value nếu tìm thấy, hoặc trả về lỗi #NA nếu không tìm thấy.
Ví dụ: Cho bảng dữ liệu 3:
Cho bảng dữ liệu
Yêu cầu: Tìm tên học sinh L?nh trong bảng dữ liệu 3.
Cách dùng hàm match trong excel:
Bước 1: Đặt con trỏ chuột vào ô D28, viết công thức =MATCH(D27;A28:A32;0).
Nhập công thức MATCH vào ô D28
Bước 2: Nhấn Enter sẽ thu được kết quả là 4, tức là học sinh tên L?nh nằm ở vị trí thứ 4 trong bảng dữ liệu.
Kết quả sau khi nhập công thức
Lệnh match trong excel kết với các hàm tìm kiếm khác
Hàm match trong excel có thể kết hợp với các hàm tìm kiếm khác để tra cứu giá trị theo hàng và cột trong một bảng. Các hàm tìm kiếm phổ biến là:
-
HLOOKUP: tra cứu giá trị theo hàng ngang.
-
VLOOKUP: tra cứu giá trị theo cột dọc.
-
NDEX: trả về giá trị ở vị trí xác định trong một dãy hoặc bảng.
-
ISNA: kiểm tra xem một giá trị có phải là lỗi #NA hay không.
Hàm MATCH kết hợp hàm HLOOKUP
Hàm HLOOKUP cho phép bạn tra cứu giá trị theo hàng ngang trong một bảng. Cú pháp của hàm HLOOKUP là:
= HLOOKUP (lookup_value, table_array, row_index_num, [range_lookup])
Trong đó:
- lookup_value: là giá trị bạn muốn tìm kiếm trong hàng đầu tiên của bảng.
- table_array: là bảng chứa các giá trị bạn muốn tra cứu. Bảng này phải có ít nhất hai hàng.
- row_index_num: là số thứ tự của hàng chứa giá trị bạn muốn trả về. Số này phải lớn hơn hoặc bằng 1 và nhỏ hơn hoặc bằng số hàng của bảng.
- range_lookup: là một giá trị logic cho biết bạn muốn tìm kiếm khớp chính xác hay khớp gần đúng. Giá trị này có thể là TRUE hoặc FALSE. Nếu bạn bỏ qua tham số này, excel sẽ mặc định là TRUE.
Tuy nhiên, hàm HLOOKUP có một nhược điểm là bạn phải nhập số thứ tự của hàng chứa giá trị bạn muốn trả về. Điều này có thể gây khó khăn nếu bạn không biết chính xác số hàng đó, hoặc nếu bảng của bạn thay đổi kích thước. Để khắc phục điều này, bạn có thể sử dụng hàm MATCH để tìm số thứ tự của hàng một cách tự động.
Ví dụ: Cho bảng ví dụ 4:
Cho bảng ví dụ
Yêu cầu: Tìm điểm môn văn của học sinh tên Khánh bằng cách dùng hàm MATCH kết hợp hàm HLOOKUP.
Cách thực hiện:
Bước 1: Ở ô B48, nhập công thức:
=HLOOKUP(B47;B43:F45;MATCH(A48;A44:A45;0);FALSE).
Nhập công thức HLOOKUP vào ô B48
Bước 2: Nhấn enter sẽ thu được kết quả là 5.2.
Kết quả cuối cùng
Kết hợp Vlookup và Match
Hàm VLOOKUP cho phép bạn tra cứu giá trị theo cột dọc trong một bảng. Cú pháp của hàm VLOOKUP là:
= VLOOKUP (lookup_value, table_array, col_index_num, [range_lookup])
Trong đó:
- lookup_value: là giá trị bạn muốn tìm kiếm trong cột đầu tiên của bảng.
- table_array: là bảng chứa các giá trị bạn muốn tra cứu. Bảng này phải có ít nhất hai cột.
- col_index_num: là số thứ tự của cột chứa giá trị bạn muốn trả về. Số này phải lớn hơn hoặc bằng 1 và nhỏ hơn hoặc bằng số cột của bảng.
- range_lookup: là một giá trị logic cho biết bạn muốn tìm kiếm khớp chính xác hay khớp gần đúng. Giá trị này có thể là TRUE hoặc FALSE. Nếu bạn bỏ qua tham số này, excel sẽ mặc định là TRUE.
Tuy nhiên, hàm VLOOKUP cũng có một nhược điểm tương tự như hàm HLOOKUP, đó là bạn phải nhập số thứ tự của cột chứa giá trị bạn muốn trả về. Điều này có thể gây khó khăn nếu bạn không biết chính xác số cột đó, hoặc nếu bảng của bạn thay đổi kích thước. Để khắc phục điều này, bạn có thể sử dụng hàm MATCH để tìm số thứ tự của cột một cách tự động.
Ví dụ: Cho bảng dữ liệu 5:
Cho bảng ví dụ
Yêu cầu: Tìm điểm văn của Linh trong bảng ví dụ 5.
Cách hàm match trong excel kết hợp với VLOOKUP:
Bước 1: Nhập công thức hàm match excel vào ô E54:
=VLOOKUP(E53;A54:B57;MATCH(D54;A53:B53;0);FALSE).
Nhập công thức hàm match excel
Bước 2: Nhấn enter sẽ thu được kết quả là 8.5.
Kết quả sau khi nhập công thức tính điểm văn của Linh
Hàm MATCH kết hợp hàm INDEX
Hàm INDEX trong Excel trả về giá trị ở vị trí xác định trong một dãy hoặc bảng. Cú pháp của hàm INDEX là:
= INDEX (array, row_num, [column_num])
Trong đó:
- array: là dãy hoặc bảng chứa các giá trị bạn muốn trả về.
- ow_num: là số thứ tự của hàng chứa giá trị bạn muốn trả về. Số này phải lớn hơn hoặc bằng 1 và nhỏ hơn hoặc bằng số hàng của dãy hoặc bảng.
- column_num: là số thứ tự của cột chứa giá trị bạn muốn trả về. Số này phải lớn hơn hoặc bằng 1 và nhỏ hơn hoặc bằng số cột của dãy hoặc bảng. Nếu bạn bỏ qua tham số này, excel sẽ mặc định là 1.
Hàm INDEX cho phép bạn truy cập vào một ô cụ thể trong một dãy hoặc bảng, nếu bạn biết số thứ tự của hàng và cột của ô đó. Tuy nhiên, nếu bạn không biết số thứ tự của hàng và cột, bạn có thể sử dụng hàm MATCH để tìm chúng một cách tự động.
Ví dụ hàm match: Cho danh sách như bảng số 6:
Cho danh sách sẵn
Yêu cầu: Tìm tên của khách hàng có SĐT là 987654321.
Cách thực hiện:
Bước 1: Đưa con trỏ chuột vào vị trí ô B73. Sau đó, bạn nhập công thức hàm index và match trong excel sau vào ô này:
=INDEX(B66:B70;MATCH(B72;D67:D70;0)).
Nhập công thức vào ô B73
Bước 2: Nhấn enter, Excel sẽ trả về kết quả là Nguyễn Văn A.
Kết quả cuối cùng sau khi nhập công thức
Hàm MATCH kết hợp hàm ISNA
Hàm ISNA kiểm tra xem một giá trị có phải là lỗi #NA hay không. Cú pháp của hàm ISNA là:
= ISNA (value)
Trong đó:
- value: là giá trị bạn muốn kiểm tra.
Hàm ISNA trả về TRUE nếu giá trị là lỗi #NA, và FALSE nếu không.
Hàm ISNA có thể kết hợp với hàm MATCH để xử lý các trường hợp không tìm thấy giá trị trong dãy hoặc bảng. Bạn có thể sử dụng công thức sau:
= IF (ISNA (MATCH (lookup_value, lookup_array, [match_type])), “Không tìm thấy”, “Tìm thấy”)
Công thức này sẽ kiểm tra xem hàm MATCH có trả về lỗi #NA hay không. Nếu có, công thức sẽ trả về chuỗi “Không tìm thấy”. Nếu không, công thức sẽ trả về chuỗi “Tìm thấy”.
Một số lưu ý khi sử dụng cấu trúc hàm match
Khi sử dụng hàm match trong excel, bạn cần lưu ý một số điểm sau:
-
Hàm match chỉ trả về số thứ tự của ô chứa giá trị tìm được, không phải giá trị đó. Nếu bạn muốn trả về giá trị đó, bạn có thể sử dụng hàm INDEX kết hợp với hàm MATCH.
-
Hàm match chỉ tìm kiếm trong một dãy hoặc bảng một chiều, không phải trong một bảng hai chiều. Nếu bạn muốn tìm kiếm trong một bảng hai chiều, bạn có thể sử dụng các hàm HLOOKUP, VLOOKUP, hoặc INDEX kết hợp với hàm MATCH.
-
Hàm match yêu cầu dãy hoặc bảng bạn tìm kiếm phải được sắp xếp theo thứ tự tăng dần hoặc giảm dần, nếu không hàm match sẽ không hoạt động chính xác. Bạn có thể sử dụng chức năng Sort của excel để sắp xếp dữ liệu của bạn.
-
Hàm match phân biệt chữ hoa chữ thường khi tìm kiếm các chuỗi. Nếu bạn muốn tìm kiếm không phân biệt chữ hoa chữ thường, bạn có thể sử dụng hàm UPPER, LOWER hoặc PROPER để chuyển đổi các chuỗi thành cùng một định dạng.
Lưu ý khi sử dụng cấu trúc hàm match
Một số lỗi thường gặp
Khi sử dụng hàm match trong excel, bạn có thể gặp một số lỗi thường gặp như sau:
Lỗi #NA
Lỗi #NA xuất hiện khi hàm match không tìm thấy giá trị lookup_value trong lookup_array. Nguyên nhân có thể là:
-
Giá trị lookup_value không tồn tại trong lookup_array.
-
Giá trị lookup_value có định dạng khác với lookup_array. Ví dụ: lookup_value là một số, nhưng lookup_array là một chuỗi.
-
Giá trị lookup_value có ký tự đại diện, nhưng match_type là 1 hoặc -1. Ví dụ: lookup_value là “A*”, nhưng match_type là 1.
-
Dãy hoặc bảng lookup_array không được sắp xếp theo thứ tự tăng dần hoặc giảm dần.
Để khắc phục lỗi này, bạn có thể:
-
Kiểm tra lại giá trị lookup_value và lookup_array, xem có sai sót hay không.
-
Chuyển đổi định dạng của giá trị lookup_value và lookup_array cho phù hợp.
-
Sử dụng ký tự đại diện chỉ khi match_type là 0.
-
Sắp xếp lại dãy hoặc bảng lookup_array theo thứ tự tăng dần hoặc giảm dần.
-
Sử dụng hàm ISNA kết hợp với hàm MATCH để xử lý các trường hợp không tìm thấy giá trị.
Lỗi #NA xuất hiện khi hàm match không tìm thấy giá trị lookup_value trong lookup_array
Lỗi #VALUE
Lỗi #VALUE xuất hiện khi hàm match nhận được một tham số không hợp lệ. Nguyên nhân có thể là:
-
Giá trị lookup_value hoặc lookup_array bị thiếu hoặc sai kiểu dữ liệu. Ví dụ: lookup_value là một ô trống, hoặc lookup_array là một số.
-
Giá trị match_type không phải là 1, 0, hoặc -1. Ví dụ: match_type là 2, hoặc “ABC”.
-
Giá trị row_num hoặc column_num trong hàm INDEX không phải là một số nguyên dương. Ví dụ: row_num là -1, hoặc 0.5.
Để khắc phục lỗi này, bạn có thể:
-
Kiểm tra lại các tham số của hàm match, xem có bị thiếu hoặc sai kiểu dữ liệu hay không.
-
Nhập đúng giá trị cho tham số match_type, chỉ có thể là 1, 0, hoặc -1.
-
Nhập đúng giá trị cho tham số row_num hoặc column_num trong hàm INDEX, phải là một số nguyên dương và nằm trong phạm vi của dãy hoặc bảng.
Lỗi #VALUE xuất hiện khi hàm match nhận được một tham số không hợp lệ
Kết luận
Đây là những điều cần biết về hàm match trong excel. Chúng tôi hy vọng bạn đã nắm được cách sử dụng hàm match và cách khắc phục các lỗi thường gặp khi sử dụng hàm match. Hàm match là một hàm rất tiện ích và linh hoạt khi bạn muốn tìm kiếm và tra cứu các giá trị trong excel. Bạn có thể áp dụng hàm match vào nhiều tình huống và bài toán khác nhau. Tôi mong bạn sẽ thành công với hàm match và excel. Cảm ơn bạn đã đọc bài viết của Unica.
>> Xem thêm: Tin học văn phòng cơ bản đến nâng cao
>>> Xem thêm: Hướng dẫn 5 cách tính đơn giá trong excel, kèm ví dụ chi tiết
>>> Xem thêm: 5 cách so sánh dữ liệu 2 cột trong excel chuẩn và nhanh nhất
Video hướng dẫn sử dụng hàm MATCH trong excel
Hướng dẫn sử dụng hàm MATCH trong Excel