Nếu bạn đã từng “vật lộn” với hàm VLOOKUP trong Excel vì những hạn chế cứng nhắc và cú pháp rườm rà, bạn chắc chắn không đơn độc. Giới hạn chỉ tìm kiếm từ trái sang phải, cùng với yêu cầu phải đếm số thứ tự cột, đã khiến VLOOKUP trở thành nỗi ám ảnh của nhiều người dùng. Nhưng đừng lo lắng, một giải pháp vượt trội đã xuất hiện: hàm XMATCH. Với khả năng tìm kiếm linh hoạt theo mọi hướng và kiểm soát kết quả khớp chính xác, XMATCH đang dần thay thế VLOOKUP và định nghĩa lại cách chúng ta tra cứu dữ liệu trong bảng tính.
XMATCH: Tìm Kiếm Dữ Liệu Linh Hoạt Mọi Hướng
Điểm gây khó chịu lớn nhất của VLOOKUP chính là yêu cầu cứng nhắc về việc cột tìm kiếm phải nằm ở ngoài cùng bên trái của vùng dữ liệu. Nếu cột bạn cần tìm không nằm ở vị trí đó, bạn buộc phải sắp xếp lại dữ liệu hoặc tìm kiếm các giải pháp “chữa cháy” khác, tốn rất nhiều thời gian và công sức.
Hàm XMATCH của Excel đã loại bỏ hoàn toàn vấn đề này. Khác với cấu trúc cứng nhắc của VLOOKUP, XMATCH có thể tìm kiếm trong bất kỳ mảng nào theo bất kỳ hướng nào bạn muốn. Bạn có thể dễ dàng tìm kiếm dữ liệu nằm bên trái cột tra cứu mà không cần phải thay đổi cấu trúc bảng tính. Hơn nữa, dù bạn muốn tìm kiếm theo chiều dọc (xuống một cột) hay chiều ngang (ngang qua một hàng), XMATCH đều xử lý một cách dễ dàng và hiệu quả.
Cú pháp cơ bản của XMATCH rất đơn giản:
=XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])
Hãy cùng phân tích các tham số này:
- lookup_value: Giá trị bạn muốn tìm kiếm.
- lookup_array: Phạm vi (cột hoặc hàng) mà bạn muốn tìm kiếm giá trị.
- match_mode: Cách thức khớp dữ liệu (0 cho khớp chính xác, -1 cho khớp chính xác hoặc giá trị nhỏ nhất kế tiếp, 1 cho khớp chính xác hoặc giá trị lớn nhất kế tiếp).
- search_mode: Hướng tìm kiếm (1 cho từ đầu đến cuối, -1 cho từ cuối đến đầu, 2 cho tìm kiếm nhị phân).
Hãy xem một ví dụ thực tế với cơ sở dữ liệu nhân viên. Giả sử bạn cần tìm phòng ban của nhân viên “Kristen Tate”, nhưng tên nhân viên nằm ở cột D trong khi phòng ban ở cột B. Với VLOOKUP, bạn sẽ phải thay đổi cấu trúc dữ liệu vì không thể tìm kiếm ngược từ phải sang trái. Tuy nhiên, với XMATCH, bạn có thể dễ dàng trả về vị trí của cô ấy trong cột tên như công thức sau:
=XMATCH("Kristen Tate", D:D, 0)
Điều này đã thay đổi đáng kể quy trình làm việc. Bạn sẽ không cần phải đếm cột nữa. Với VLOOKUP, bạn phải liên tục đếm để xác định số chỉ mục cột. Nếu bạn thêm một cột mới vào dữ liệu, các công thức VLOOKUP của bạn sẽ bị lỗi ngay lập tức vì số chỉ mục đã thay đổi.
Hàm XMATCH Excel hiển thị vị trí của nhân viên "Kristen Tate"
Kiểm Soát Kết Quả Khớp Dữ Liệu Tối Ưu Với XMATCH
Các tùy chọn khớp của VLOOKUP chỉ giới hạn ở khớp chính xác hoặc khớp gần đúng — chỉ có vậy. Nếu dữ liệu của bạn không hoàn toàn “sạch”, bạn sẽ tốn thời gian để dọn dẹp bảng Excel trước khi có thể bắt đầu tra cứu.
XMATCH giải quyết vấn đề này một cách dễ dàng với tham số match_mode
. Đặt nó bằng 0 để khớp chính xác, tương tự như tham số FALSE của VLOOKUP. Nhưng đây mới là điểm thú vị: bạn có thể sử dụng -1 để tìm kiếm khớp chính xác hoặc giá trị nhỏ nhất kế tiếp, và 1 cho khớp chính xác hoặc giá trị lớn nhất kế tiếp.
Hãy xem xét ví dụ về mức lương trong tập dữ liệu nhân viên. Để tìm nhân viên có mức lương gần nhất nhưng không vượt quá 75.000 USD, bạn sẽ sử dụng:
=XMATCH(75000, H:H, -1)
Công thức này sẽ trả về vị trí của mức lương cao nhất từ cột H không vượt quá giá trị mục tiêu của bạn – một điều mà VLOOKUP rất khó xử lý trừ khi dữ liệu của bạn đã được sắp xếp hoàn hảo.
XMATCH Excel hiển thị vị trí mức lương gần đúng 75.000 USD
Tham số search_mode
bổ sung thêm một lớp kiểm soát khác. Trong khi 1 tìm kiếm từ đầu đến cuối (mặc định), -1 sẽ tìm kiếm từ cuối đến đầu. Tham số này rất quan trọng khi bạn có các giá trị trùng lặp và cần tìm lần xuất hiện gần đây nhất.
Ví dụ, nếu “John Smith” xuất hiện nhiều lần trong cột D của một tập dữ liệu, chúng ta có thể sử dụng công thức sau để tìm lần xuất hiện cuối cùng của anh ta:
=XMATCH("John Smith", D:D, 0, -1)
Hiểu rõ các tham số này giúp bạn tiếp cận việc tra cứu dữ liệu hiệu quả hơn. Mức độ kiểm soát này đồng nghĩa với việc ít phải tạo cột phụ hơn và ít thao tác dữ liệu hơn. Các công thức của bạn sẽ trở nên mạnh mẽ hơn và bảng tính của bạn sẽ gọn gàng hơn.
Kết Hợp XMATCH Với INDEX: Bộ Đôi Hoàn Hảo Để Tra Cứu
XMATCH thậm chí còn hữu ích hơn khi bạn kết hợp nó với hàm INDEX. Trong khi XMATCH tìm vị trí, INDEX sẽ truy xuất giá trị thực tế từ vị trí đó. Đây là một trong những hàm Excel hữu ích để tìm dữ liệu nhanh chóng, nhưng khi kết hợp với nhau, chúng tạo ra một bộ đôi tra cứu linh hoạt và mạnh mẽ hơn nhiều.
Dưới đây là cú pháp cơ bản khi bạn kết hợp cả hai:
=INDEX(return_array, XMATCH(lookup_value, lookup_array, [match_mode]))
Sự kết hợp này loại bỏ cơn ác mộng đếm cột của VLOOKUP. Thay vì phải nhớ rằng lương là cột thứ tám, bạn chỉ cần chỉ định trực tiếp cột lương. Do đó, bạn sẽ không gặp phải lỗi công thức khi thêm hoặc xóa các cột.
Giả sử bạn cần tìm phòng ban của Kristen Tate từ dữ liệu nhân viên với INDEX và XMATCH:
=INDEX(R:R, XMATCH("Kristen Tate", D:D, 0))
Công thức trên được đọc một cách tự nhiên và trả về giá trị từ cột R tại vị trí mà “Kristen Tate” xuất hiện trong cột D.
Công thức INDEX XMATCH Excel trả về phòng ban của nhân viên cụ thể
Sự kết hợp này cũng xử lý các tra cứu phức tạp, chẳng hạn như khi bạn cần tìm mức lương của nhân viên trong phòng Sales có ID nhân viên cao nhất:
=INDEX(A:A, XMATCH(MAX(IF(R:R="Sales", H:H)), IF(R:R="Sales", H:H), 0))
Công thức mảng này tìm ID nhân viên cao nhất trong phòng Sales, sau đó trả về mức lương của người đó. Nếu bạn thử làm điều đó với VLOOKUP, bạn sẽ cần nhiều cột phụ và các giải pháp phức tạp khác.
Hàm XMATCH đã hoàn toàn thay thế VLOOKUP trong quy trình làm việc của nhiều chuyên gia. Sự linh hoạt về hướng tìm kiếm, khả năng kiểm soát khớp chính xác và khả năng tích hợp dễ dàng với INDEX khiến nó trở thành hàm tra cứu lý tưởng cho mọi nhu cầu. Một khi bạn trải nghiệm mức độ kiểm soát này, việc quay lại với VLOOKUP dường như không còn thực tế nữa. Hãy thử áp dụng XMATCH vào công việc của bạn ngay hôm nay và chia sẻ trải nghiệm của bạn với chúng tôi nhé!