Hàm MATCH trong Excel

Có thể bạn chưa biết trong Excel có rất nhiều hàm có thể  giúp bạn tìm kiếm một giá trị trong 1 mảng và hàm Match là một trong những hàm đó. Nói một cách đơn giản hơn hàm Match sẽ trả lại kết quả là vị trí tương đối của giá trị bạn cần tìm trong 1 vùng. Tuy nhiên, hàm Match còn có thể làm nhiều hơn như vậy. Trong bài học này chúng ta cùng nhau tìm hiểu về hàm Match cách dùng Match trong Excel bạn nhé

Cú pháp hàm Match

Hàm MATCH tìm một mục được chỉ định trong phạm vi của ô, sau đó trả về vị trí tương đối của mục đó trong phạm vi này. Ví dụ, nếu phạm vi A1:A3 chứa giá trị 5, 25 và 38 thì công thức =MATCH(25,A1:A3,0) sẽ trả về số 2, vì 25 là mục thứ hai trong phạm vi.

Cú pháp của hàm Match như sau:

=MATCH(, , [ 1 trong 3 số : 1 hoặc 0 hoặc -1])

Trong công thức trên:

  •  (là tham số bắt buộc): là giá trị bạn muốn tìm vị trí tương đối trong mảng, có thể thuộc loại dữ liệu số, text, logic hoặc là 1 tham chiếu đến 1 địa chỉ ô
  •  (cũng là tham số bắt buộc): vùng muốn tìm giá trị
  •  [ 1 trong 3 số : 1 hoặc 0 hoặc -1]: Là tham số không bắt buộc): định nghĩa cách tìm kiếm
    • Nếu bạn điền số 1 hoặc bỏ trống: hàm Match sẽ tìm giá trị lớn nhất trong vùng tìm kiếm nhưng nhỏ hơn hoặc bằng giá trị đang được tìm kiếm. Chú ý: vùng tìm kiếm cần được sắp xếp theo chiều tăng dần, nghĩa là, từ giá trị nhỏ nhất đến giá trị lớn nhất hoặc từ A tới Z
    • Nếu bạn điền số 0: hàm Match sẽ tìm chính xác giá trị cần tìm trong vùng và trả lại vị trí đầu tiên mà nó tìm thấy
    • Nếu bạn điền số -1: hàm Match sẽ tìm giá trị nhỏ nhất trong vùng tìm kiếm nhưng lơn hơn hoặc bằng giá trị đang được tìm kiếm. Chú ý: vùng tìm kiếm cần được sắp xếp theo thứ tự giảm dần, nghĩa là, từ giá trị lớn nhất đến giá trị nhỏ nhất hoặc từ Z tới A

Hơi lan mam khó hiểu phải không nào. Chúng ta sẽ xét thử 1 ví dụ để giải tỏa đầu óc nhé. Hãy cùng nhau làm một ví dụ để hiểu rõ hơn:

Copy và dán  danh sách sau vào Excel 

Tên truyệnSố lượng
MATCH
Vô địch kiếm vực101



Đấu phá thương khung103
Tên truyệnVô địch kiếm vực
Chiến thiên giới105
Hàm MATCH

Tuyệt thế võ thần107



Kim long bất diệt thể109



Hám thế hoàng quyền111



Hàng long thập bát thiên113




Gõ vào ô muốn hiển thị kết quả công thức sau

=MATCH(E3,A2:A8,0)

như các bạn đã thấy, tên truyện Vô địch kiếm vực ở vị trí tương đối số 1 trong vùng A2:A11, nên kết quả hàm Match của chúng ta trả về kết quả là  1.

Các lưu ý khi sử dụng hàm Match:

  • Hàm MATCH trả về vị trí của giá trị cần tìm trong lookup_array, chứ không trả về chính giá trị đó. Ví dụ, MATCH("b",{"a","b","c"},0) trả về 2, là vị trí tương đối của "b" trong mảng {"a","b","c"}.
  • Hàm MATCH không phân biệt chữ hoa và chữ thường khi so khớp các giá trị văn bản.
  • Nếu hàm MATCH không tìm thấy giá trị khớp nào, nó trả về giá trị lỗi #N/A.
  • Nếu kiểu khớp là 0 và giá trị tìm kiếm là chuỗi văn bản, thì bạn có thể dùng ký tự đại diện  dấu hỏi (?) và dấu sao (*) trong đối số giá trị tìm kiếm. Một dấu chấm hỏi khớp bất kỳ ký tự đơn nào; một dấu sao phù hợp với bất kỳ chuỗi ký tự nào. Nếu bạn muốn tìm một dấu chấm hỏi hay dấu sao thực, hãy gõ một dấu ngã (~) trước ký tự đó.
  • Nếu vùng tìm kiếm có một vài giá trị trùng nhau, hàm Match sẽ trả về giá trị đầu tiên mà nó gặp

Cách dùng hàm MATCH trong Excel

Ví dụ dùng MATCH đơn giản

  1. Cũng xét ví dụ trên chúng ta Data validation để kiểm tra từng tên truyện 
  2. Chúng ta sẽ tạo Data validation là List trong ô E3. Chọn ô E3 rồi vào Data => Data validation 
  3. Cửa sổ Data validation hiện lên chọn như sau với =$A$2:$A$8 là vùng chứa dữ liệu để tạo List. 
  4. Nhấn OK List của ta sẽ được tạo
  5. Nhập công thức sau vào ô E4 để sử dụng hàm Match
  6. =MATCH(E3,A2:A8,0)
  7. Nhấn Enter trên bàn phím kết quả sẽ thu được như sau
  8. Sử dụng mũi tên ở ô E3 để kiểm tra các tên truyện khác

Sử dụng MATCH với ký tự đại diện

Ở phần trước, các bạn đã học cách sử dụng hàm Match một cách đơn giản. Giống như một số hàm khác, hàm Match của chúng ta cũng có khả năng ăn chơi với các kí tự đại diện:

  • Dấu hỏi chấm (?) – đại diện cho 1 kí tự bất kì
  • Dấu sao (*) – đại diện cho bất kì số lượng kí tự nào. (Chỉ sử dụng với Match khi tham số thứ 3 của hàm Match có giá trị bằng 0)

Chúng ta có ví dụ sau: Tìm vị trí tương đối của truyện đầu bằng “Đấu”

Với hàm match sử dụng cùng kí tự đại diện dấu “*”

=MATCH(E3&"*",A2:A9,0)

Ta được kết quả là 2:

Một ví dụ nữa với kí tự đại diện dấu hỏi chấm (?) với dữ liệu ở bảng phía trên:

=MATCH("Ki? long bất diệt thể",A2:A9,0)

Ta được kết quả là 5, là vị trí tương đối của tên truyện "Kim long bất diệt thể"

Sử dụng MATCH kết hợp hàm EXACT phân biệt chữ hoa chữ thường

Như đã nói ở phần trước, hàm Match khi tìm kiếm sẽ không phân biệt được chữ hoa và chữ thường. Để giúp hàm Match phân biệt chữ hoa, chữ thường, ta sẽ kết hợp hàm Match với hàm EXACT như sau:

=MATCH(TRUE, EXACT(,< giá trị tìm kiếm>),0)

Chúng ta có thể hiểu công thức này như sau:

  • Hàm EXACT sẽ giúp chúng ta so sánh giá trị cần tìm kiếm với mỗi giá trị trong vùng tìm kiếm. Nếu ô được so sánh trùng khít về nội dung 100% với ô đem đi so sánh thì hàm EXACT sẽ trả về giá trị TRUE, nếu không hàm EXACT sẽ trả về giá trị FALSE
  • Sau đó hàm Match sẽ tìm kiếm giá trị TRUE được trả về từ hàm EXACT này, kết quả là chúng ta có thể sử dụng hàm MATCH có phân biệt được chữ hoa và chữ thường.

Chú ý: đây là 1 công thức mảng, sau khi nhập xong công thức, bạn sử dụng phím tắt CTRL + SHIFT + ENTER để nhập, bạn không cần thêm dấu ngoặc nhọn vào công thức.

Ví dụ chúng ta cần tìm vị trí chính xác của truyện bắt đầu bằng vô trong bảng dưới

Ta sử dụng hàm MATCH kết hợp với EXACT như sau

=MATCH(TRUE,(EXACT(A2:A9,"vô*"))) .

Vì là công thức mảng nên sau khi gõ công thức xong chúng ta nhấn Ctrl + Shift + Enter trên bàn phím để thấy kết quả

Kết quả trả về vị trí thứ 8, vị trí số 1 do chữ Vô viết hoa nên không chính xác.

Hàm MATCH so sánh 2 cột tìm sự khác biệt

Một trong những công việc gây tốn rất nhiều thời gian đó là so sánh 2 cột trong Excel để biết thành phần nào ở cột 1 chưa có trong cột 2 hoặc ngược lại. Có nhiều cách để giải quyết vấn đề này, trong đó có cách sử dụng Match kết hợp với hàm ISNA:

=IF(ISNA(MATCH(, ,0)),"Không có trong cột 2","")

Phân tích công thức

  • Hàm Match sẽ tìm giá trị ở cột 1 trong cột 2, nếu giá trị này được tìm thấy, hàm Match sẽ trả về vị trí tương đối của giá trị đó, nếu không tìm thấy, lỗi #N/A sẽ được trả về.
  • Hàm ISNA kiểm tra xem kết quả trả về từ hàm Match có phải là #N/A hay không. Nếu hàm ISNA trả về giá trị đúng, nghĩa là giá trị không được tìm thấy, điều này dẫn đến việc tham số đầu tiên của hàm IF có giá trị TRUE, do vậy kết quả của hàm IF sẽ là “Không có trong cột 2”

Để minh hoạ cho đoạn giải thích rất là dài phía trên, không có gì tốt hơn 1 ví dụ:

Trong ví dụ này, Tuyệt thế võ thần có trong cột A  mà không có trong cột B, vậy nên kết quả thông báo như ở cột C.

Hàm MATCH kết hợp VLOOKUP

Bạn có chắc là bạn đã biết sử dụng hàm vlookup rồi chứ? nếu chưa, bạn có thể bấm vào chữ Vlookup để tìm hiểu về hàm này trước khi tiếp tục.

Một vấn đề rất hay gặp phải của hàm VLOOKUP đó là: Lỗi khi bảng tra cứu thay đổi cấu trúc, cách giải quyết đầu tiên là tổ chức dữ liệu tốt hơn trong Excel để tránh lỗi này. Thế nhưng trong bài này, chúng ta sẽ đi tìm hiểu 1 kĩ thuật nữa để hạn chế được lỗi này khi sử dụng VLOOKUP

Chúng ta có 1 ví dụ về hàm VLOOKUP như sau: 

Trong ví dụ chúng ta sử dụng hàm VLOOKUP để trả về Đơn giá của truyện Vô địch kiêm vực. Chúng ta sử dụng hàm VLOOKUP sau:

=VLOOKUP(F3,$A$2:$C$9,3,0)

Bây giờ chúng ta sẽ xoá cột Số lượng đi . Ngay lập tức hàm VLOOKUP của chúng ta lỗi  #REF!

 Để hạn chế lỗi này, chúng ta sẽ kết hợp hàm Match và Vlookup như sau:

=VLOOKUP(F3,$A$2:$C$9,MATCH(C1,A1:C1,0),0)

Và bây giờ, chúng ta có thể thử xoá cột Đơn giá đi, kết quả là, hàm VLOOKUP không còn bị lỗi nữa. Và Excel cũng sửa luôn công thức cho chúng ta.

MATCH(C1,A1:C1,0) công thức này sẽ dò tìm từ "Đơn giá" tức là tiêu đề cột Đơn giá xem nó nằm ở vị trí thứ mấy trong Dải A1 B1 C1. Lúc đầu 3 cột thì cho vị trí số 3, 2 cột thì cho vị trí số 2 nên dù thêm hay xóa cột đều không làm công thức vlookup của chúng ta bị lỗi.

Trên đây là toàn bộ cách sử dụng hàm MATCH trong Excel cũng như cách kết hợp hàm MATCH với nhiều hàm khác như VLOOKUP, EXACT ... Chúc các bạn học tốt.

Bình luận