Các ví dụ dưới đây sẽ hướng dẫn cách tra cứu dữ liệu trong bảng khi có 3 giá trị cần dò tìm trở lên.
Lưu ý: Tất cả mẫu data sử dụng trong bài đều có trong file đính kèm
Ví dụ 1:
Bảng A5:F14 là bảng chứa số liệu kinh doanh của các vùng và chi nhánh qua các năm, bảng A1:C2 là các thông tin cần cần tra cứu.
Vì có tới 3 tiêu chí để tìm kiếm nên chúng ta sẽ gặp khó khăn với việc sử dụng hàm INDEX hay VLOOKUP thông thường, tuy nhiên vấn đề này có thể xử lý bằng việc sử dụng công thức mảng như sau.
Bước 1: Tại ô D2, nhập câu lệnh =INDEX(C6:F14,MATCH(A2&B2,A6:A14&B6:B14,0),MATCH(C2,C5:F5,0))
Bước 2: Vì đây là công thức mảng nên giữ Ctrl + Shift và ấn Enter. Kết quả là trong năm 2013, chi nhánh Hà Nội của vùng 1 có số lượng bán là 19070
Câu lệnh ở trên có khác gì so với các câu lệnh index thông thường? Đó là việc sử dụng đoạn công thức mảng MATCH(A2&B2,A6:A14&B6:B14,0). Chúng ta sẽ phân tích câu lệnh để hiểu tại sao nó lại đưa ra kết quả chính xác
– Bôi đen phần A2&B2 trong câu lệnh, ấn F9 nhận được giá trị là “1Hà Nội”
– Tiếp tục bôi đen phần A6:A14&B6:B14, nhấn F9
Điều này có nghĩa là thay vì tìm từng giá trị A2 và B2 thì câu lệnh sẽ tìm kiếm 1 giá trị gộp là A2&B2 (“1Hà Nội”) trong 1 mảng lớn hơn là A6:A14&B6:B14, như 2 hình trên có thể thấy kết quả sẽ trả ra là 1. Câu lệnh ở ô D2 tương đương với câu =INDEX(C6:H14, 1, 5)
Ví dụ 2:
Ở ví dụ trên các giá trị năm để tìm kiếm nằm trong các cột khác nhau, vậy nếu chúng cùng nằm trong 1 cột, như bảng A8:D24 như hình dưới, câu lệnh INDEX có còn sử dụng được không? Câu trả lời là có, ngoài ra với trường hợp này chúng ta còn có thể sử dụng thêm 2 loại câu lệnh nữa là SUMIFS và DGET.
– Dùng hàm INDEX:
Nhập câu lệnh =INDEX(D9:D24,MATCH(A2&B2&C2,A9:A24&B9:B24&C9:C24,0)) ấn Ctrl + Shift + Enter
Lệnh MATCH(A2&B2&C2,A9:A24&B9:B24&C9:C24,0) sẽ tìm kiếm số thứ tự của dòng trong vùng D9:D24 thỏa mãn ba điều kiện A2&B2&C2 sau đó trả ra kết quả cần tìm
– Dùng hàm SUMIFS:
Nhập câu lệnh =SUMIFS(D9:D24,A9:A24,A2,B9:B24,B2,C9:C24,C2), click OK ta sẽ nhận được kết quả
– Dùng hàm DGET:
Nhập câu lệnh =DGET(A8:D24,D8,A1:C2), click OK. Trong đó:
- A8:D24: vùng dữ liệu cần tìm kiếm
- D8: Tên cột cần lấy (ở đây là cột “Doanh số”)
- A1:C2: vùng sử dụng làm giá trị tìm kiếm (tên cột ở vùng này bắt buộc phải giống với tên cột ở vùng dữ liệu cần tìm kiếm)
Hai hàm SUMIFS và DGET tỏ ra hiệu quả và đơn giản hơn rất nhiều so với việc sử dụng hàm INDEX trong VD này, nhưng nếu quay trở lại VD trên thì 2 hàm này lại không sử dụng được.
Với trường hợp 4,5 hay nhiều hơn nữa số giá trị dò tìm chúng ta có thể làm hoàn toàn tương tự. Để thực hành và xem thêm 1 số VD , các bạn có thể download file mẫu đính kèm.
Comment ( 1 )