Hàm XMATCH trong Excel
Hàm XMATCH trong Excel

Tóm lược

Hàm XMATCH trong Excel thực hiện tra cứu và trả về một vị trí trong phạm vi dọc hoặc ngang. Nó là sự kế thừa mạnh mẽ và linh hoạt hơn cho chức năng MATCH. XMATCH hỗ trợ đối sánh gần đúng và chính xác, tìm kiếm ngược và ký tự đại diện (*?) Cho các đối sánh từng phần.

Mục đích
Nhận vị trí của một mục trong danh sách hoặc bảng

Giá trị trả lại
Vị trí số trong mảng tra cứu

Cú pháp
= XMATCH (lookup_value, lookup_array, [match_mode], [search_mode])
Tranh luận
  • lookup_value – Giá trị tra cứu.
  • lookup_array – Mảng hoặc dải ô cần tìm kiếm.
  • match_mode – [optional] 0 = đối sánh chính xác (mặc định), -1 = đối sánh chính xác hoặc nhỏ nhất tiếp theo, 1 = đối sánh chính xác hoặc lớn hơn tiếp theo, 2 = đối sánh ký tự đại diện.
  • search_mode – [optional] 1 = tìm kiếm từ đầu tiên (mặc định), -1 = tìm kiếm từ cuối cùng, 2 = tìm kiếm nhị phân tăng dần, -2 = tìm kiếm nhị phân giảm dần.
Phiên bản
Ghi chú sử dụng

Hàm XMATCH trong Excel thực hiện tra cứu và trả về một vị trí. XMATCH có thể thực hiện tra cứu trong phạm vi dọc hoặc ngang và có nghĩa là một người kế nhiệm linh hoạt và mạnh mẽ hơn cho Hàm MATCH. XMATCH hỗ trợ cả đối sánh gần đúng và đối sánh chính xác, và ký tự đại diện (*?) cho các trận đấu từng phần. Giống như Hàm XLOOKUP, XMATCH có thể tìm kiếm dữ liệu bắt đầu từ giá trị đầu tiên hoặc giá trị cuối cùng (tức là tìm kiếm ngược lại). Cuối cùng, XMATCH có thể thực hiện các tìm kiếm nhị phân, được tối ưu hóa đặc biệt cho tốc độ. Xem loại đối sánh và chế độ tìm kiếm bên dưới để biết chi tiết.

XMATCH vs. MATCH

Trong một số trường hợp, XMATCH có thể là ứng dụng thay thế cho Hàm MATCH. Ví dụ: đối với các đối sánh chính xác, cú pháp giống hệt nhau:

=MATCH(lookup, range, 0) // exact match
=XMATCH(lookup, range, 0) // exact match

Tuy nhiên, đối với các đối sánh gần đúng, hành vi là khác nhau khi loại đối sánh được đặt thành 1:

=MATCH(lookup, range, 1) // exact match or next smallest
=XMATCH(lookup, range, 1) // exact match or next *largest*

Ngoài ra, XMATCH cho phép -1 cho loại đối sánh, không có sẵn với MATCH:

=XMATCH(lookup, range, -1) // exact match or next smallest

Lưu ý: hàm MATCH hoàn toàn không cung cấp đối số chế độ tìm kiếm.

Loại so khớp

Đối số thứ ba cho XMATCH là Loại so khớp. Đây là không bắt buộc đối số kiểm soát hành vi đối sánh như sau:

Loại so khớp Hành vi
0 (mặc định) Kết hợp chuẩn xác. Sẽ trả về # N / A nếu không có kết quả phù hợp.
-1 Đối sánh chính xác hoặc mục nhỏ hơn tiếp theo.
1 Đối sánh chính xác hoặc mục lớn hơn tiếp theo.
2 Đối sánh ký tự đại diện (*,?, ~)

Chế độ tìm kiếm

Đối số thứ tư cho XMATCH là search_mode. Đây là không bắt buộc đối số kiểm soát hành vi tìm kiếm như sau:

Chế độ tìm kiếm Hành vi
1 (mặc định) Tìm kiếm từ giá trị đầu tiên
-1 Tìm kiếm từ giá trị cuối cùng (đảo ngược)
2 Các giá trị tìm kiếm nhị phân được sắp xếp theo thứ tự tăng dần
-2 Các giá trị tìm kiếm nhị phân được sắp xếp theo thứ tự giảm dần

Tìm kiếm nhị phân rất nhanh, nhưng cẩn thận dữ liệu được sắp xếp theo yêu cầu. Nếu dữ liệu không được sắp xếp đúng cách, tìm kiếm nhị phân có thể trả về kết quả không hợp lệ trông hoàn toàn bình thường.

Ví dụ số 1 – đối sánh chính xác

Trong ví dụ được hiển thị, XMATCH được sử dụng để truy xuất vị trí của “Sao Hỏa” trong danh sách các hành tinh trong phạm vi B6: B14. Công thức trong G6 là:

=XMATCH(G5,B6:B14) // returns 4

Lưu ý XMATCH mặc định kết hợp chính xác. Nếu “Mars” G5 bị viết sai chính tả “Marz”, XMATCH sẽ trả về # N / A.

Ví dụ số 2 – hành vi đối sánh

Ví dụ dưới đây minh họa hành vi của chế độ đối sánh với giá trị tra cứu là 3,1 trong E4 và giá trị tra cứu trong B5: B11.

Ví dụ về chế độ đối sánh XMATCH

E6=XMATCH(E4,B5:B11) // returns #N/A
E7=XMATCH(E4,B5:B11,-1) // returns 3
E8=XMATCH(E4,B5:B11,1) // returns 4

Ví dụ # 3 – INDEX và XMATCH

XMATCH có thể được sử dụng giống như MATCH với hàm INDEX. Để lấy đường kính của sao Hỏa dựa trên ví dụ ban đầu ở trên, công thức là:

=INDEX(C6:C14,XMATCH(G5,B6:B14)) / returns 6792

Ghi chú

  1. XMATCH có thể hoạt động với cả mảng dọc và mảng ngang.
  2. XMATCH sẽ trả về # N / A nếu không tìm thấy giá trị tra cứu.

https://exceljet.net/excel-functions/excel-xmatch-function