Cara Mencari dengan Pelbagai Kriteria dalam Excel (2 Cara Mudah)

  • Berkongsi Ini
Hugh West

Semasa bekerja dalam Excel, kami perlu melakukan ini dengan kerap. Kita perlu mencari nilai tertentu dalam set data yang memenuhi satu atau lebih kriteria. Hari ini saya akan menunjukkan cara anda boleh mencari satu atau lebih nilai yang memenuhi berbilang kriteria dalam set data dalam Excel.

Muat Turun Buku Kerja Amalan

Muat turun buku kerja amalan ini untuk bersenam semasa anda membaca ini artikel.

Cari Dengan Pelbagai Kriteria.xlsx

2 Cara yang Sesuai untuk Mencari dengan Pelbagai Kriteria dalam Excel

Lihat data ditetapkan di bawah. Kami mempunyai ID Pekerja, Nama Pekerja, Tarikh Menyertai, dan Gaji sebuah syarikat bernama Kumpulan Jupyter . Kami akan mencari nilai dengan berbilang kriteria menggunakan fungsi INDEX, MATCH, XLOOKUP, dan FILTER . Berikut ialah gambaran keseluruhan set data untuk tugasan kami hari ini.

Kini kami akan cuba mencari nilai yang memenuhi pelbagai jenis berbilang kriteria daripada set data ini.

Kaedah 1: Cari Pelbagai Kriteria Jenis DAN

Pertama sekali, mari cuba cari beberapa kriteria berbilang jenis DAN . Di sini, DAN taip berbilang kriteria bermakna, satu nilai perlu memenuhi semua kriteria untuk dipilih. Mari cuba cari pekerja dengan ID lebih daripada 400 dan gaji lebih daripada $40000 . Anda boleh menyelesaikan tugas dalam 3 cara yang berbeza.

1.1 Gabungkan Fungsi INDEX dan PADANAN dalam Baris dan Lajur

Sebelum pergi ke perkara utama, anda boleh pergi dan melihat sekilas pada fungsi INDEX dan MATCH Excel. Kami akan mengetahui pekerja dengan ID lebih daripada 400 dan gaji lebih daripada $40000 menggunakan formula INDEX-MATCH . Mari ikut arahan di bawah:

Langkah:

  • Pertama sekali, pilih sel G7 dan tulis formula berikut.
=INDEX(C5:C16,MATCH(1,(B5:B16>400)*(E5:E16>40000),0),1)

  • Selepas itu, tekan Enter pada papan kekunci anda. Hasilnya, kami telah menemui pekerja dengan ID lebih daripada 400 dan gaji lebih daripada $40000 , Richard Samuelson .

Pecahan Formula
  • B5:B16>400 melalui semua ID dalam lajur B dan mengembalikan tatasusunan TRUE dan FALSE , TRUE apabila ID lebih besar daripada 400 , jika tidak PALSU .
  • E5:E16>40000 melalui semua gaji dalam lajur E dan mengembalikan tatasusunan BENAR dan SALAH , BENAR apabila gaji lebih besar daripada $40,000 , jika tidak PALSU.
  • (B5:B16>400)*(E5:E16>40000) mendarab dua tatasusunan TRUE dan PALSU dan mengembalikan 1 apabila ID lebih besar daripada 400 dan gaji lebih besar daripada $40,000 . Jika tidak mengembalikan 0 .
  • MATCH(1,(B5:B16>400)*(E5:E16>40000),0) melalui tatasusunan (B5:B16>400)*(E5:E16>40000) dan mengembalikan nombor siri 1 pertama yang ditemuinya.
  • Dalam kes ini, ia mengembalikan 5 kerana 1 pertama adalah dalam nombor siri 5.
  • Akhir sekali, INDEX(C5:C16,MATCH(1,(B5:B16>400)*(E5 :E16>40000),0),1) mengembalikan nama Pekerja daripada julat C5:C16 , dengan nombor baris sama dengan output fungsi dan lajur MATCH nombor sama dengan 1 .
Nota Ini ialah Formula Tatasusunan . Jadi jangan lupa untuk tekan Ctrl + Shift + Enter melainkan anda berada di Office 365 .
  • Ini ialah pekerja yang diperlukan dengan ID lebih daripada 400 dan gaji lebih daripada $40,000 . Sekarang, jika anda faham perkara ini, bolehkah anda beritahu saya formula untuk mengetahui pekerja yang telah menyertai sebelum 31 Dis, 2009 , tetapi masih menerima gaji kurang daripada $25,000 .
  • Selepas itu, taip formula di bawah dalam sel G7 .
=INDEX(C5:C16,MATCH(1,(D5:D16

  • Oleh itu, tekan Enter . Selanjutnya, anda akan mendapat Angela Hopkins sebagai pemulangan formula.

Baca Lagi: 7 Jenis Carian Yang Anda Boleh Gunakan dalam Excel

1.2 Menggunakan Fungsi XLOOKUP

Kita boleh menyelesaikan tugas sebelumnya menggunakan fungsi XLOOKUP Excel juga. Tetapi ingat, XLOOKUP hanya tersedia dalam Office 365 . Sebelum pergi ke perkara utama, anda boleh melihat sekilaspada fungsi XLOOKUP Excel. Sekarang, kami mengetahui pekerja dengan ID lebih daripada 400 dan gaji lebih daripada $40,000 menggunakan fungsi XLOOKUP . Mari ikut arahan di bawah untuk belajar!

Langkah:

  • Mula-mula, taip formula di bawah dalam sel G7 .
=XLOOKUP(1,(B5:B16>400)*(E5:E16>40000),C5:C16)

  • Hasilnya, kami telah mendapat pekerja yang sama seperti sebelum ini, Richard Samuelson . Ini ialah nama pekerja dengan ID lebih daripada 400 dan gaji lebih daripada $40,000 .

Pecahan Formula
  • (B5:B16>400)*(E5:E16>40000) mengembalikan tatasusunan 1 dan 0 , 1 apabila ID lebih besar daripada 400 dan gaji lebih daripada $40,000 . 0 jika tidak.
  • XLOOKUP(1,(B5:B16>400)*(E5:E16>40000),C5:C16) carian pertama untuk 1 in tatasusunan (B5:B16>400)*(E5:E16>40000). Apabila ia menemui satu, ia mengembalikan nilai daripada sel bersebelahannya dalam julat C5:C16 .

Baca Lagi: Cara Menggunakan Fungsi LOOKUP dalam Excel (4 Contoh Yang Sesuai)

1.3 Menggunakan Fungsi FILTER

INDEX-MATCH dan XLOOKUP formula mempunyai satu had. Jika lebih daripada satu nilai memenuhi kriteria yang diberikan, mereka hanya mengembalikan nilai pertama. Sebagai contoh, dalam contoh awal, jika anda melihat dengan teliti, anda akan mendapati bahawa terdapat dua pekerja dengan ID lebih daripada 400 dan gaji lebih daripada $40,000 . Mereka ialah Richard Samuelson dan Usman Malik. Tetapi formula INDEX-MATCH dan XLOOKUP mengembalikan hanya pekerja pertama, Richard Samuelson . Untuk mendapatkan semua nilai yang memenuhi kriteria yang diberikan, anda boleh menggunakan fungsi FILTER Excel. Tetapi ingat, fungsi FILTER juga hanya tersedia dalam Office 365 .

Langkah:

  • Untuk ketahui pekerja dengan ID lebih daripada 400 dan gaji lebih daripada $40,000 formula FILTER ialah:
=FILTER(C5:C16,(B5:B16>400)*(E5:E16>40000))

  • Selepas itu, kali ini kami telah mendapat semua pekerja yang mengekalkan semua kriteria, Richard Samuelson dan Usman Malik .

Pecahan Formula
  • (B5:B16>400)*(E5:E16>40000) mengembalikan tatasusunan 1 dan 0 , 1 apabila ID lebih besar daripada 400 dan gaji lebih daripada $40,000. 0 sebaliknya (Lihat bahagian INDEX-MACH ).
  • PENAPIS(C5:C16,(B5:B16>400)*(E5:E16> ;40000)) melalui semua nilai dalam tatasusunan (B5:B16>400)*(E5:E16>40000), dan apabila ia menemui 1 , ia mengembalikan nilai bersebelahan daripada julat C5:C16 .
  • Oleh itu, kami mendapat semua pekerja dengan ID lebih daripada 400 dan gaji lebih besardaripada $40,000 .
  • Sekarang, jika anda faham perkara ini, bolehkah anda beritahu saya formula untuk mengetahui pekerja yang menyertai antara 1 Januari 2014, dan 31 Disember 2016 , tetapi menerima gaji sekurang-kurangnya $30,000 ? ya. Anda betul. Formulanya ialah:
=FILTER(C5:C16,(D5:D16>=DATE(2014,1,1))*(D5:D16=30000))

Baca Lagi: Cara Mencari Berbilang Nilai dalam Excel (10 Cara)

Kaedah 2: Cari Berbilang Kriteria Jenis ATAU

Sekarang, kami akan cuba mencari beberapa nilai yang memenuhi pelbagai kriteria daripada jenis ATAU . Di sini, kriteria jenis ATAU bermakna satu nilai perlu memenuhi sekurang-kurangnya satu kriteria antara semua kriteria yang akan dipilih. Mari cuba ketahui pekerja yang menyertai sebelum 1 Jan, 2010 atau menerima gaji lebih daripada $30,000 .

2.1 Gabungkan Fungsi INDEX dan PADANAN dalam Julat Tarikh

Klik di sini untuk melawati fungsi INDEX dan klik di sini untuk melawati fungsi MACH sebelum meneruskan, jika anda mahu.

Langkah:

  • Formula INDEX-MATCH akan ditunjukkan dalam kotak formula di bawah.
=INDEX(C5:C16,MATCH(TRUE,((D5:D1630000))>0,0),1)

  • Lihat, kami telah mendapat Jack Simpson , pekerja pertama dengan tarikh penyertaan sebelum 1 Januari 2010 atau gaji lebih tinggi daripada $30,000 . Tetapi terdapat ramai lagi pekerja. Menggunakan INDEX-MATCH, kami hanya mendapat yang pertama.
  • Kami akan mengumpulkan semua pekerja kemudian menggunakanFungsi FILTER kemudian. Ini ialah pekerja yang diperlukan yang sepadan dengan sekurang-kurangnya satu kriteria.

Pecahan Formula
  • D5:D16 ="" strong=""> mengembalikan tatasusunan TRUE dan FALSE . BENAR apabila tarikh penyertaan dalam lajur D kurang daripada 1 Jan 2010. PALSU jika tidak.
  • E5:E16>30000 juga mengembalikan tatasusunan TRUE dan FALSE . BENAR apabila gaji melebihi $30,000. PALSU jika tidak.
  • (D5:D1630000) menambah dua tatasusunan dan mengembalikan satu lagi tatasusunan 0, 1, atau 2 . 0 apabila tiada kriteria dipenuhi, 1 apabila hanya satu kriteria dipenuhi dan 2 apabila kedua-dua kriteria dipenuhi.
  • ((D5:D1630000))>0 melalui semua nilai tatasusunan (D5:D1630000) dan mengembalikan TRUE jika nilai lebih besar daripada 0 ( 1 dan 2 ), dan PALSU sebaliknya ( 0 ).
  • MATCH(TRUE,((D5:D1630000))>0,0) melalui semua nilai dalam tatasusunan ((D5:D1630000))>0 dan mengembalikan nombor siri pertama di mana ia mendapat TRUE .
  • Dalam kes ini, mengembalikan 3 kerana TRUE yang pertama adalah dalam siri 3 .
  • Akhir sekali, INDEX(C5:C16,MATCH(TRUE,((D5:D1630000))>0,0),1) mengembalikan nama pekerja daripada julat C5:C16 dengan nombor siri yang dikembalikan oleh fungsi MATCH .

Sekarang, jika andafaham perkara ini, bolehkah anda memberitahu saya formula untuk mengetahui pekerja yang mempunyai ID kurang daripada 300, atau tarikh menyertai kurang daripada Januari 1, 2012, atau gaji lebih daripada $30,000 ?

Ya. Anda betul. Formulanya ialah:

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

Baca Lagi: Cara untuk Teks Carian dalam Excel (7 Kaedah yang Sesuai)

2.2 Menggunakan Fungsi XLOOKUP

Anda boleh mencapai tugas yang sama menggunakan fungsi XLOOKUP dalam Excel. XLOOKUP hanya tersedia dalam Office 365 .

Langkah:

  • Formula untuk mencari pekerja dengan tarikh menyertai sebelum 1 Januari 2010, atau gaji lebih daripada $30,000 ialah:
=XLOOKUP(TRUE,((D5:D1630000))>0,C5:C16)

  • Lihat, kami mempunyai pekerja yang sama seperti sebelumnya, Jack Simpson . Tetapi seperti formula INDEX-MATCH , lebih ramai pekerja memenuhi kriteria yang diberikan. Kami hanya mendapat yang pertama.

Pecahan Formula
  • ((D5: D1630000))>0 mengembalikan BENAR apabila sekurang-kurangnya satu daripada dua kriteria dipenuhi, jika tidak PALSU . Lihat bahagian di atas.
  • XLOOKUP(TRUE,((D5:D1630000))>0,C5:C16) kemudian mengembalikan nama pekerja dari lajur C5:C16 , di mana ia mendapat TRUE yang pertama.

Baca Lagi: Cara Mencari Nilai daripada Helaian Lain dalam Excel (3 Kaedah Mudah )

2.3 Menggunakan Fungsi FILTER

Akhir sekali, kita akanselesaikan tugas yang sama menggunakan fungsi FILTER dalam Excel. Fungsi FILTER hanya tersedia dalam Office 365 . Kali ini kami akan mendapatkan semua pekerja yang menyertai sebelum 1 Januari 2010, atau menerima gaji lebih daripada $30,000 .

Langkah:

  • Formula akan sama seperti yang ditunjukkan dalam kotak formula di bawah.
=FILTER(C5:C16,((D5:D1630000))>0)

  • Oleh itu, ia mengembalikan semua pekerja yang memenuhi sekurang-kurangnya satu daripada kriteria yang diberikan.
  • Lihat, kali ini kami telah mendapat semua pekerja yang memenuhi kriteria kami yang diberikan, tarikh menyertai sebelum 1 Januari, 2010, atau gaji lebih daripada $30,000 .

Pecahan Formula
  • ((D5:D1630000))>0 mengembalikan BENAR apabila sekurang-kurangnya satu daripada dua kriteria dipenuhi, jika tidak PALSU . Lihat bahagian INDEX-MATCH .
  • FILTER(C5:C16,((D5:D1630000))>0) melewati semua sel dalam julat C5:C16 tetapi hanya mengembalikannya apabila ia menemui TRUE .

Baca Lagi: Cara Mencari a Jadual dalam Excel (8 Kaedah)

Kesimpulan

Menggunakan kaedah ini, anda boleh mencari beberapa nilai yang memenuhi berbilang kriteria daripada mana-mana set data. Adakah anda tahu kaedah lain? Atau adakah anda mempunyai sebarang soalan? Sila tanya kami.

Hugh West ialah jurulatih dan penganalisis Excel yang sangat berpengalaman dengan lebih 10 tahun pengalaman dalam industri. Beliau memiliki Ijazah Sarjana Muda Perakaunan dan Kewangan serta Ijazah Sarjana dalam Pentadbiran Perniagaan. Hugh mempunyai minat untuk mengajar dan telah membangunkan pendekatan pengajaran yang unik yang mudah diikuti dan difahami. Pengetahuan pakar Excel beliau telah membantu beribu-ribu pelajar dan profesional di seluruh dunia meningkatkan kemahiran mereka dan cemerlang dalam kerjaya mereka. Melalui blognya, Hugh berkongsi pengetahuannya dengan dunia, menawarkan tutorial Excel percuma dan latihan dalam talian untuk membantu individu dan perniagaan mencapai potensi penuh mereka.