INDEX và MATCH trên nhiều cột
Để tra cứu một giá trị bằng cách so khớp trên nhiều cột, một công thức mảng dựa trên INDEX và Đội hình thi đấu các chức năng kết hợp NHIỀU, VẬN CHUYỂN và CỘT sẽ giúp bạn một việc.
Làm thế nào để tra cứu một giá trị bằng cách so khớp trên nhiều cột?
Để điền vào lớp tương ứng của mỗi học sinh như bảng trên được hiển thị, trong đó thông tin được liệt kê trên nhiều cột, trước tiên bạn có thể sử dụng thủ thuật của hàm MMULT, TRANSPOSE và COLUMN để tạo ra một mảng ma trận. Sau đó, hàm MATCH sẽ cung cấp cho bạn vị trí của giá trị tra cứu của bạn, giá trị này sẽ được đưa đến INDEX để truy xuất giá trị bạn đang tìm kiếm trong mảng.
Cú pháp chung
=INDEX(return_range,(MATCH(1,MMULT(--(lookup_array=lookup_value),TRANSPOSE(COLUMN(lookup_array)^0)),0)))
√ Lưu ý: Đây là công thức mảng yêu cầu bạn nhập với Ctrl + sự thay đổi + đăng ký hạng mục thi.
- return_range: Phạm vi mà bạn muốn công thức trả về thông tin lớp từ đó. Ở đây đề cập đến phạm vi lớp.
- tra cứu_giá trị: Giá trị mà công thức sử dụng để tìm thông tin lớp tương ứng của nó. Ở đây đề cập đến tên đã cho.
- tra cứu_mảng: Phạm vi của các ô trong đó lookup_value đã được liệt kê; Phạm vi có các giá trị để so sánh với lookup_value. Ở đây đề cập đến phạm vi tên.
- trận đấu_type 0: Buộc MATCH tìm giá trị đầu tiên chính xác bằng lookup_value.
Để tìm lớp của Jimmy, vui lòng sao chép hoặc nhập công thức bên dưới vào ô H5 và nhấn Ctrl + sự thay đổi + đăng ký hạng mục thi để nhận được kết quả:
= INDEX ($ B $ 5: $ B $ 7, (MATCH (1, MMULT (- ($ C $ 5: $ E $ 7=G5), TRANSPOSE (COLUMN ($ C $ 5: $ E $ 7) ^ 0)), 0)))
√ Lưu ý: Các dấu đô la ($) ở trên biểu thị các tham chiếu tuyệt đối, có nghĩa là tên và phạm vi lớp trong công thức sẽ không thay đổi khi bạn di chuyển hoặc sao chép công thức sang các ô khác. Lưu ý rằng bạn không nên thêm ký hiệu đô la vào tham chiếu ô đại diện cho giá trị tra cứu, vì bạn muốn nó tương đối khi bạn sao chép nó sang các ô khác. Sau khi bạn nhập công thức, hãy kéo chốt điền xuống để áp dụng công thức cho các ô bên dưới.
Giải thích công thức
=INDEX($B$5:$B$7,(MATCH(1,MMULT(--($C$5:$E$7=G5),TRANSPOSE(COLUMN($C$5:$E$7)^0)),0)))
- - ($ C $ 5: $ E $ 7 = G5): Phân đoạn này kiểm tra từng giá trị trong phạm vi $ C $ 5: $ E $ 7 nếu chúng bằng giá trị trong ô G5 và tạo một mảng TRUE và FALSE như sau:
{TRUE, FALSE, FALSE; FALSE, FALSE, FALSE; FALSE, FALSE, FALSE}.
Sau đó, âm kép sẽ chuyển đổi TRUE và FALSE thành 1s và 0s để mang lại một mảng như thế này:
{1,0,0; 0,0,0; 0,0,0}. - COLUMN ($ C $ 5: $ E $ 7): Hàm COLUMN trả về số cột cho phạm vi $ C $ 5: $ E $ 7 trong một mảng như thế này: 3,4,5 {}.
- VẬN CHUYỂN (COLUMN ($ C $ 5: $ E $ 7)^ 0) = VẬN CHUYỂN (3,4,5 {}^ 0): Sau khi nâng lũy thừa lên 0, tất cả các số trong mảng {3,4,5} sẽ được chuyển thành 1: {1,1,1}. Sau đó, hàm TRANSPOSE chuyển đổi mảng cột thành mảng hàng như sau: {1; 1; 1}.
- MMULT (- ($ C $ 5: $ E $ 7 = G5),VẬN CHUYỂN (COLUMN ($ C $ 5: $ E $ 7)^ 0)) = MMULT ({1,0,0; 0,0,0; 0,0,0},{1; 1; 1}): Hàm MMULT trả về tích ma trận của hai mảng như sau: {1; 0; 0}.
- TRẬN ĐẤU (1,MMULT (- ($ C $ 5: $ E $ 7 = G5),VẬN CHUYỂN (COLUMN ($ C $ 5: $ E $ 7)^ 0)), 0) = TRẬN ĐẤU (1,{1; 0; 0}, 0): Match_type 0 buộc hàm MATCH trả về vị trí của kết quả khớp đầu tiên của 1 trong mảng {1; 0; 0}, Đó là 1.
- MỤC LỤC($ B $ 5: $ B $ 7,(TRẬN ĐẤU (1,MMULT (- ($ C $ 5: $ E $ 7 = G5),VẬN CHUYỂN (COLUMN ($ C $ 5: $ E $ 7)^ 0)), 0))) = INDEX ($ B $ 5: $ B $ 7,1): Hàm INDEX trả về 1giá trị st trong phạm vi lớp $ B $ 5: $ B $ 7, Đó là A.
Để dễ dàng tra cứu giá trị bằng cách so khớp trên nhiều cột, bạn cũng có thể sử dụng bổ trợ Excel chuyên nghiệp của chúng tôi Kutools For Excel. Xem hướng dẫn tại đây để hoàn thành nhiệm vụ.
Các chức năng liên quan
Hàm INDEX trong Excel trả về giá trị được hiển thị dựa trên một vị trí nhất định từ một phạm vi hoặc một mảng.
Hàm MATCH trong Excel tìm kiếm một giá trị cụ thể trong một phạm vi ô và trả về vị trí tương đối của giá trị.
Hàm MMULT trong Excel trả về tích ma trận của hai mảng. Kết quả mảng có cùng số hàng với array1 và cùng số cột với array2.
Hàm TRANSPOSE trong Excel xoay hướng của một dải ô hoặc mảng. Ví dụ, nó có thể xoay một bảng được sắp xếp theo chiều ngang trong các hàng sang chiều dọc trong các cột hoặc ngược lại.
Hàm COLUMN trả về số cột mà công thức xuất hiện hoặc trả về số cột của tham chiếu đã cho. Ví dụ, công thức = COLUMN (BD) trả về 56.
Công thức liên quan
Tra cứu nhiều tiêu chí với INDEX và MATCH
Khi xử lý một cơ sở dữ liệu lớn trong bảng tính Excel với một số cột và chú thích hàng, luôn luôn khó khăn để tìm ra thứ gì đó đáp ứng nhiều tiêu chí. Trong trường hợp này, bạn có thể sử dụng công thức mảng với các hàm INDEX và MATCH.
Tra cứu hai chiều với INDEX và MATCH
Để tìm kiếm thứ gì đó trên cả hàng và cột trong Excel, hoặc chúng ta nói để tìm kiếm một giá trị tại giao điểm của hàng và cột cụ thể, chúng ta có thể sử dụng sự trợ giúp của các hàm INDEX và MATCH.
Tra cứu giá trị đối sánh gần nhất với nhiều tiêu chí
Trong một số trường hợp, bạn có thể cần phải tra cứu giá trị đối sánh gần nhất hoặc gần đúng nhất dựa trên nhiều tiêu chí. Với sự kết hợp của các hàm INDEX, MATCH và IF, bạn có thể nhanh chóng thực hiện nó trong Excel.
Các công cụ năng suất văn phòng tốt nhất
Kutools for Excel - Giúp Bạn Nổi Bật Giữa Đám Đông
Kutools for Excel Tự hào có hơn 300 tính năng, Đảm bảo rằng những gì bạn cần chỉ là một cú nhấp chuột...

Office Tab - Cho phép đọc và chỉnh sửa theo tab trong Microsoft Office (bao gồm Excel)
- Một giây để chuyển đổi giữa hàng chục tài liệu đang mở!
- Giảm hàng trăm cú click chuột cho bạn mỗi ngày, tạm biệt bàn tay chuột.
- Tăng năng suất của bạn lên 50% khi xem và chỉnh sửa nhiều tài liệu.
- Mang các tab hiệu quả đến Office (bao gồm Excel), giống như Chrome, Edge và Firefox.
