06/04/2021, 14:51

Hàm Index và Match trong Excel: Tìm kiếm dữ liệu nâng ca - Lý thuyết Excel cơ bản và nâng cao

Trong bài này chúng ta sẽ học hai hàm Index và Match trong Excel, đây là hàm tra cứu dữ liệu nâng cao được sử dụng khá nhiều trong Excel, thậm chí nó còn hay hơn cả hàm Vlookup và Hlookup. 1. Hàm Match trong Excel Trong Excel, hàm match có công dụng tìm kiếm các cell nằm trên một hàng hoặc ...

Trong bài này chúng ta sẽ học hai hàm Index và Match trong Excel, đây là hàm tra cứu dữ liệu nâng cao được sử dụng khá nhiều trong Excel, thậm chí nó còn hay hơn cả hàm Vlookup và Hlookup.

1. Hàm Match trong Excel

Trong Excel, hàm match có công dụng tìm kiếm các cell nằm trên một hàng hoặc trên một cột, sau đó trả về vị trí xuất hiện. Nếu không tìm thấy thì nó trả về #N/A.

Công thức của nó như sau:

=MATCH(lookup_value, lookup_array, [match_type])

Trong đó:

  • lookup_value là giá trị cần tìm
  • lookup_array là danh sách dãy ô cần tìm
  • match_type là cách tìm:
    • 1 là tìm bé hơn
    • 0 là tìm bằng
    • -1 là tìm lớn hơn

Ví dụ: Tìm vị trí xuất hiện của cột "Mã khoa cần tìm" trong danh sách Mã khoa.

tim ma khoa JPG

Bước 1: Viết công thức cho ô đầu tiên (B9)

  • Ta sẽ tìm cho ô đầu tiên đó là B9.
  • Dãy cần tìm là C3:C6.
  • Kết quả trả về trong vùng mình đã bôi đỏ.

Áp dụng cú pháp trên ta được công thức như sau:

=MATCH(B9,$C$3:$C$6,0)

Bước 2: Nhập công thức trên, sau đó nhấn Enter sẽ nhận được kết quả.

Bước 3: Dùng chuột kéo công thức xuống các ô còn lại phía dưới.

ket qua match JPG

Như ta thấy, dòng thứ 2 không tìm thấy nên nó trả về giá trị #N/A.

2. Hàm Index trong Excel

Hàm Index trong Excel sẽ trả về giá trị của một ô trong một danh sách. Vị trí được xác định dựa vào số thứ tự của ô đó nằm trong danh sách, ô đầu tiên là 1.

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

=INDEX(array, row_num, [column_num])

Trong đó:

  • array là danh sách cần tìm
  • column_num là cột cần lấy, mặc định là cột đầu tiên
  • row_num là số thứ tự cần lấy nằm trong cột cần lấy, bắt đầu danh sách là 1.

Ví dụ: Lấy tên khoa tại vị trí thứ 3 (B9), nằm trong danh sách C3:C6, in tên khoa trong ô C9.

=INDEX(C3:C6, B9, 0)

vi du index JPG

Giả sử mình muốn lấy số thứ tự của cột kế bên (tức giá trị ô D3) thì làm thế nào?

Lúc này ta phải thay đổi danh sách thành C3:D6 và chỉ số column_num = 2.

=INDEX(C3:D6, B9, 2)

index column JPG

3. Kết hợp hàm Match và Index để tìm kiếm nâng cao

Ta thấy, công dụng của hàm match là trả về vị trí xuất hiện, còn hàm index lại lấy giá trị của vị trí đó. Vì vậy ta có thể kết hợp hai hàm này để tìm kiếm nâng cao, thậm chí còn hay hơn cả hàm vlookup và hlookup.

Lưu ý:

  • Hàm Match chỉ nhận vào dãy ô nằm trên một hàng hoặc một cột
  • Hàm Index thì có thể nhận vào một dãy ô gồm nhiều hàng và nhiều cột

Ví dụ: Cho bảng dữ liệu như sau.

index match 1 JPG

Yêu cầu: hãy lấy học lực của sinh viên có mã là SV3 nằm trong danh sách B2:E6.

Để tiện cho việc thay đổi thì ở bảng thứ hai mình có lưu trữ mã sinh viên cần lấy nằm trong ô B9, và kết quả sẽ in ra ở ô C9.

Ý tưởng:

  • Dùng hàm match để tìm vị trí xuất hiện của mã sinh viên SV3 nằm trong dãy C.
  • Có được vị trí rồi thì dùng hàm Index để đối chiếu qua dãy E để tìm học lực.

Bài giải:

=INDEX(B3:E6, MATCH(B9, C3:C6, 0), 4)

index match 3 JPG

Trên là cách sử dụng hàm Index và Match trong Excel. Sự kết hợp của hai hàm này rất hữu dụng, có thể tìm kiếm một cách thông minh và chính xác.

Bài tiếp

Bùi Văn Nam

27 chủ đề

7090 bài viết

Cùng chủ đề
0