Cách tra cứu với nhiều tiêu chí trong Excel (2 cách dễ dàng)

  • Chia Sẻ Cái Này
Hugh West

Khi làm việc trong Excel, chúng ta phải làm việc này thường xuyên. Chúng ta phải tra cứu một giá trị cụ thể trong tập dữ liệu đáp ứng một hoặc nhiều tiêu chí. Hôm nay, tôi sẽ trình bày cách bạn có thể tra cứu một hoặc nhiều giá trị thỏa mãn nhiều tiêu chí trong một tập dữ liệu trong Excel.

Tải xuống Sách bài tập thực hành

Tải xuống sách bài tập thực hành này để thực hành trong khi bạn đang đọc sách này bài viết.

Tra cứu với nhiều tiêu chí.xlsx

2 cách phù hợp để tra cứu với nhiều tiêu chí trong Excel

Xem dữ liệu đặt bên dưới. Chúng tôi có ID nhân viên, tên nhân viên, ngày tham gia, Mức lương của một công ty có tên Jupyter Group . Chúng ta sẽ tra cứu các giá trị với nhiều tiêu chí bằng cách sử dụng các hàm INDEX, MATCH, XLOOKUP, FILTER . Dưới đây là tổng quan về tập dữ liệu cho nhiệm vụ hôm nay của chúng ta.

Bây giờ, chúng ta sẽ cố gắng tra cứu các giá trị đáp ứng nhiều loại tiêu chí khác nhau từ tập dữ liệu này.

Cách 1: Tra cứu nhiều tiêu chí của loại AND

Trước hết chúng ta thử tra cứu nhiều tiêu chí của loại AND . Ở đây, AND nhập nhiều tiêu chí có nghĩa là một giá trị phải thỏa mãn tất cả các tiêu chí để được chọn. Hãy thử tìm một nhân viên có ID lớn hơn 400 và mức lương lớn hơn $40000 . Bạn có thể hoàn thành nhiệm vụ theo 3 các cách khác nhau.

1.1 Kết hợp Hàm INDEX và MATCH trong Hàng và Cột

Trước khi đi vào vấn đề chính, bạn có thể xem qua các hàm INDEX MATCH của Excel. Chúng tôi sẽ tìm ra nhân viên có ID lớn hơn 400 và mức lương lớn hơn $40000 bằng cách sử dụng công thức INDEX-MATCH . Hãy làm theo hướng dẫn bên dưới:

Các bước thực hiện:

  • Đầu tiên, chọn ô G7 và viết công thức sau.
=INDEX(C5:C16,MATCH(1,(B5:B16>400)*(E5:E16>40000),0),1)

  • Sau đó, nhấn Enter trên bàn phím của bạn. Do đó, chúng tôi đã tìm thấy một nhân viên có ID lớn hơn 400 và mức lương lớn hơn $40000 , Richard Samuelson .

Phân tích công thức
  • B5:B16>400 đi qua tất cả ID trong cột B và trả về một mảng TRUE FALSE , TRUE khi ID lớn hơn 400 , nếu không thì FALSE .
  • E5:E16>40000 đi qua tất cả các mức lương trong cột E và trả về một mảng TRUE FALSE , TRUE khi mức lương lớn hơn $40,000 , nếu không thì FALSE.
  • (B5:B16>400)*(E5:E16>40000) nhân hai mảng TRUE FALSE và trả về 1 khi ID lớn hơn 400 và mức lương lớn hơn $40.000 . Nếu không thì trả về 0 .
  • MATCH(1,(B5:B16>400)*(E5:E16>40000),0) đi qua mảng (B5:B16>400)*(E5:E16>40000) và trả về số sê-ri của 1 đầu tiên mà nó gặp phải.
  • Trong trường hợp này, nó trả về 5 vì số 1 đầu tiên nằm trong số sê-ri 5.
  • Cuối cùng, INDEX(C5:C16,MATCH(1,(B5:B16>400)*(E5 :E16>40000),0),1) trả về tên Nhân viên từ phạm vi C5:C16 , với số hàng bằng với đầu ra của hàm và cột MATCH số bằng 1 .
Ghi chú Đây là Công thức mảng . Vì vậy, đừng quên nhấn Ctrl + Shift + Enter trừ khi bạn đang ở Office 365 .
  • Đây là nhân viên bắt buộc có ID lớn hơn 400 và mức lương lớn hơn $40.000 . Bây giờ, nếu bạn hiểu điều này, bạn có thể cho tôi biết công thức để tìm ra nhân viên đã tham gia trước ngày 31 tháng 12 năm 2009 , nhưng vẫn nhận được mức lương thấp hơn $25,000 .
  • Sau đó, nhập công thức bên dưới vào ô G7 .
=INDEX(C5:C16,MATCH(1,(D5:D16

  • Do đó, hãy nhấn Enter . Hơn nữa, bạn sẽ nhận được Angela Hopkins khi trả lại công thức.

Đọc thêm: 7 kiểu tra cứu bạn có thể sử dụng trong Excel

1.2 Sử dụng hàm XLOOKUP

Chúng ta cũng có thể hoàn thành nhiệm vụ trước đó bằng cách sử dụng hàm XLOOKUP của Excel. Nhưng hãy nhớ rằng XLOOKUP chỉ khả dụng trong Office 365 . Trước khi đi vào vấn đề chính, bạn có thể xem quatại hàm XLOOKUP của Excel. Bây giờ, chúng ta tìm ra nhân viên có ID lớn hơn 400 và mức lương lớn hơn $40.000 bằng cách sử dụng hàm XLOOKUP . Hãy cùng làm theo hướng dẫn bên dưới để tìm hiểu nhé!

Các bước thực hiện:

  • Đầu tiên các bạn nhập công thức bên dưới vào ô G7 .
=XLOOKUP(1,(B5:B16>400)*(E5:E16>40000),C5:C16)

  • Kết quả là chúng tôi có cùng một nhân viên như trước đó, Richard Samuelson . Đây là tên của nhân viên có ID lớn hơn 400 và mức lương lớn hơn $40.000 .

Phân tích công thức
  • (B5:B16>400)*(E5:E16>40000) trả về một mảng 1 0 , 1 khi ID lớn hơn 400 và mức lương lớn hơn $40.000 . 0 nếu không.
  • XLOOKUP(1,(B5:B16>400)*(E5:E16>40000),C5:C16) đầu tiên tìm kiếm 1 trong mảng (B5:B16>400)*(E5:E16>40000). Khi tìm thấy một giá trị, nó sẽ trả về giá trị từ ô liền kề trong phạm vi C5:C16 .

Đọc thêm: Cách sử dụng hàm LOOKUP trong Excel (4 ví dụ phù hợp)

1.3 Áp dụng hàm FILTER

INDEX-MATCH XLOOKUP công thức có một hạn chế. Nếu có nhiều giá trị đáp ứng các tiêu chí nhất định, chúng chỉ trả về giá trị đầu tiên. Ví dụ, trong ví dụ trước, nếu bạn nhìn kỹ, bạn sẽ thấy rằng có hai nhân viên có ID lớn hơn 400 và mức lương lớn hơn $40.000 . Họ là Richard Samuelson Usman Malik. Nhưng các công thức INDEX-MATCH XLOOKUP trả về chỉ nhân viên đầu tiên , Richard Samuelson . Để có được tất cả các giá trị thỏa mãn tiêu chí đã cho, bạn có thể sử dụng hàm FILTER của Excel. Nhưng hãy nhớ rằng chức năng FILTER cũng chỉ khả dụng trong Office 365 .

Các bước:

  • Để tìm ra những nhân viên có ID lớn hơn 400 và mức lương lớn hơn $40.000 thì công thức FILTER sẽ là:
=FILTER(C5:C16,(B5:B16>400)*(E5:E16>40000))

  • Sau đó, lần này chúng tôi có tất cả những nhân viên luôn duy trì tất cả các tiêu chí, Richard Samuelson Usman Malik .

Phân tích công thức
  • (B5:B16>400)*(E5:E16>40000) trả về một mảng 1 0 , 1 khi ID lớn hơn hơn 400 và mức lương lớn hơn 40.000 đô la. 0 nếu không (Xem phần INDEX-MATCH ).
  • FILTER(C5:C16,(B5:B16>400)*(E5:E16> ;40000)) đi qua tất cả các giá trị trong mảng (B5:B16>400)*(E5:E16>40000), và khi tìm thấy 1 , nó trả về giá trị liền kề từ phạm vi C5:C16 .
  • Do đó, chúng tôi nhận được tất cả nhân viên có ID lớn hơn 400 và a lương cao hơnhơn $40.000 .
  • Bây giờ, nếu bạn hiểu điều này, bạn có thể cho tôi biết công thức để tìm ra những nhân viên đã tham gia từ ngày 1 tháng 1 năm 2014, Ngày 31 tháng 12 năm 2016 , nhưng đã nhận được mức lương ít nhất là $30.000 ? Đúng. Bạn đúng rồi. Công thức sẽ là:
=FILTER(C5:C16,(D5:D16>=DATE(2014,1,1))*(D5:D16=30000))

Đọc thêm: Cách tra cứu nhiều giá trị trong Excel (10 cách)

Cách 2: Tra cứu nhiều tiêu chí của loại OR

Bây giờ, chúng ta sẽ thử tra cứu một số giá trị thỏa mãn nhiều tiêu chí của loại OR . Ở đây, tiêu chí loại OR có nghĩa là một giá trị phải đáp ứng ít nhất một tiêu chí trong số tất cả các tiêu chí được chọn. Hãy thử tìm ra nhân viên đã tham gia trước ngày 1 tháng 1 năm 2010 hoặc nhận mức lương lớn hơn $30.000 .

2.1 Hợp nhất hàm INDEX và MATCH trong Phạm vi ngày

Nhấp vào đây để truy cập chức năng INDEX và nhấp vào đây để truy cập chức năng MATCH trước khi tiếp tục, nếu bạn muốn.

Các bước:

  • Công thức INDEX-MATCH sẽ như trong hộp công thức bên dưới.
=INDEX(C5:C16,MATCH(TRUE,((D5:D1630000))>0,0),1)

  • Thấy chưa, chúng ta đã có Jack Simpson , nhân viên đầu tiên có ngày gia nhập trước ngày 1 tháng 1 năm 2010 hoặc mức lương cao hơn hơn $30.000 . Nhưng có nhiều nhân viên hơn. Sử dụng INDEX-MATCH, chúng tôi chỉ nhận được người đầu tiên.
  • Chúng tôi sẽ tập hợp tất cả nhân viên sau bằng cách sử dụngchức năng FILTER sau. Đây là nhân viên được yêu cầu phù hợp với ít nhất một tiêu chí.

Phân tích công thức
  • D5:D16 ="" strong=""> trả về một mảng TRUE FALSE . TRUE khi ngày tham gia trong cột D nhỏ hơn ngày 1 tháng 1 năm 2010. FALSE ngược lại.
  • E5:E16>30000 cũng trả về một mảng TRUE FALSE . TRUE khi mức lương lớn hơn $30.000. FALSE nếu không thì.
  • (D5:D1630000) thêm hai mảng và trả về một mảng khác gồm 0, 1, hoặc 2 . 0 khi không thỏa mãn tiêu chí nào, 1 khi chỉ thỏa mãn một tiêu chí và 2 khi thỏa mãn cả hai tiêu chí.
  • ((D5:D1630000))>0 đi qua tất cả các giá trị của mảng (D5:D1630000) và trả về TRUE nếu giá trị lớn hơn 0 ( 1 2 ) và FALSE ngược lại ( 0 ).
  • MATCH(TRUE,((D5:D1630000))>0,0) đi qua tất cả các giá trị trong mảng ((D5:D1630000))>0 và trả về số sê-ri đầu tiên trong đó nó nhận TRUE .
  • Trong trường hợp này, trả về 3 TRUE đầu tiên nằm trong chuỗi 3 .
  • Cuối cùng, INDEX(C5:C16,MATCH(TRUE,((D5:D1630000))>0,0),1) trả về tên nhân viên từ phạm vi C5:C16 với số sê-ri được hàm MATCH trả về.

Bây giờ, nếu bạnHiểu điều này, bạn có thể cho tôi biết công thức để tìm ra nhân viên có ID nhỏ hơn 300, hoặc ngày tham gia dưới tháng 1 1, 2012, hoặc mức lương lớn hơn $30.000 ?

Có. Bạn đúng rồi. Công thức sẽ là:

=INDEX(C5:C16,MATCH(TRUE,((B5:B16<200)+(D5:D1630000))>0,0),1)

Đọc thêm: Cách Tra cứu văn bản trong Excel (7 phương pháp phù hợp)

2.2 Áp dụng hàm XLOOKUP

Bạn có thể hoàn thành tác vụ tương tự bằng cách sử dụng hàm XLOOKUP trong Excel. XLOOKUP chỉ khả dụng trong Office 365 .

Các bước:

  • Công thức tìm nhân viên có ngày tham gia trước ngày 1 tháng 1 năm 2010, hoặc mức lương lớn hơn $30.000 sẽ là:
=XLOOKUP(TRUE,((D5:D1630000))>0,C5:C16)

  • Thấy chưa, chúng ta có cùng một nhân viên trước đó, Jack Simpson . Nhưng với công thức INDEX-MATCH , nhiều nhân viên đáp ứng các tiêu chí nhất định. Chúng tôi chỉ có cái đầu tiên.

Phân tích công thức
  • ((D5: D1630000))>0 trả về TRUE khi ít nhất một trong hai tiêu chí được thỏa mãn, nếu không thì FALSE . Xem phần ở trên.
  • XLOOKUP(TRUE,((D5:D1630000))>0,C5:C16) sau đó trả về tên nhân viên từ cột C5:C16 , nơi nó nhận TRUE đầu tiên.

Đọc thêm: Cách tra cứu giá trị từ một trang tính khác trong Excel (3 phương pháp dễ dàng )

2.3 Sử dụng hàm FILTER

Cuối cùng, chúng ta sẽhoàn thành nhiệm vụ tương tự bằng cách sử dụng hàm FILTER trong Excel. Chức năng FILTER chỉ khả dụng trong Office 365 . Lần này, chúng tôi sẽ lấy tất cả những nhân viên đã tham gia trước ngày 1 tháng 1 năm 2010, hoặc nhận được mức lương lớn hơn $30.000 .

Các bước:

  • Công thức sẽ giống như trong hộp công thức bên dưới.
=FILTER(C5:C16,((D5:D1630000))>0)

  • Do đó, nó trả về tất cả các nhân viên đáp ứng ít nhất một trong các tiêu chí đã cho.
  • Hãy xem, lần này chúng ta có tất cả các nhân viên đáp ứng các tiêu chí đã cho, ngày tham gia trước Ngày 1 tháng 1, 2010, hoặc mức lương lớn hơn $30.000 .

Phân tích công thức
  • ((D5:D1630000))>0 trả về TRUE khi ít nhất một trong hai tiêu chí được thỏa mãn, nếu không thì FALSE . Xem phần INDEX-MATCH .
  • FILTER(C5:C16,((D5:D1630000))>0) đi qua tất cả các ô trong phạm vi C5:C16 nhưng chỉ trả về những giá trị đó khi gặp TRUE .

Đọc thêm: Cách tra cứu Bảng trong Excel (8 Phương pháp)

Kết luận

Sử dụng các phương pháp này, bạn có thể tra cứu một số giá trị thỏa mãn nhiều tiêu chí từ bất kỳ tập hợp dữ liệu nào. Bạn có biết phương pháp nào khác không? Hay bạn có câu hỏi nào không? Vui lòng hỏi chúng tôi.

Hugh West là một nhà phân tích và huấn luyện viên Excel giàu kinh nghiệm với hơn 10 năm kinh nghiệm trong ngành. Ông có bằng Cử nhân Tài chính Kế toán và bằng Thạc sĩ Quản trị Kinh doanh. Hugh có niềm đam mê giảng dạy và đã phát triển một phương pháp giảng dạy độc đáo, dễ hiểu và dễ theo dõi. Kiến thức chuyên môn về Excel của ông đã giúp hàng nghìn sinh viên và chuyên gia trên toàn thế giới cải thiện kỹ năng và xuất sắc trong sự nghiệp của họ. Thông qua blog của mình, Hugh chia sẻ kiến ​​thức của mình với mọi người, cung cấp các hướng dẫn Excel miễn phí và đào tạo trực tuyến để giúp các cá nhân và doanh nghiệp phát huy hết tiềm năng của họ.