Kuinka etsiä useita kriteerejä Excelissä (2 helppoa tapaa)

  • Jaa Tämä
Hugh West

Kun työskentelemme Excelissä, meidän on tehtävä tämä usein. Meidän on etsittävä tietystä tietokokonaisuudesta tiettyä arvoa, joka täyttää yhden tai useamman kriteerin. Tänään näytän, miten voit etsiä yhtä tai useampaa arvoa, jotka täyttävät useita kriteerejä Excelin tietokokonaisuudessa.

Lataa harjoituskirja

Lataa tämä harjoituskirja, jotta voit harjoitella tätä artikkelia lukiessasi.

Hae useita kriteerejä.xlsx

2 sopivaa tapaa etsiä useita kriteerejä Excelissä

Katsokaa alla olevaa datasarjaa. Meillä on Työntekijätunnukset, työntekijöiden nimet, liittymispäivät, ja Palkat yrityksen nimeltä Jupyter-ryhmä Etsimme arvoja useilla kriteereillä käyttämällä komentoa INDEX, MATCH, XLOOKUP, ja FILTER-toiminnot Seuraavassa on yleiskatsaus tämänpäiväisen tehtävämme tietokokonaisuuteen.

Yritämme nyt etsiä arvoja, jotka täyttävät erityyppiset monikriteerit, tästä tietokokonaisuudesta.

Menetelmä 1: Etsi useita AND-tyyppisiä kriteerejä

Yritetään ensinnäkin etsiä joitakin moninkertaisia kriteerejä, jotka koskevat AND tyyppi. Tässä, AND tyyppi useita kriteerejä tarkoittaa, että yhden arvon on täytettävä kaikki kriteerit, jotta se voidaan valita. Yritetään löytää työntekijä, jolla on ID suurempi kuin 400 ja palkka on suurempi kuin $40000 Voit suorittaa tehtävän 3 eri tavoin.

1.1 INDEX- ja MATCH-funktioiden yhdistäminen riveissä ja sarakkeissa

Ennen kuin siirrytään pääasiaan, voitte käydä vilkaisemassa pääkohdan sisältöä. INDEX ja MATCH Excelin toimintoja. Selvitämme työntekijän, jolla on ID suurempi kuin 400 ja palkka on suurempi kuin $40000 käyttämällä INDEX-MATCH kaava. Noudatetaan alla olevia ohjeita:

Vaiheet:

  • Valitse ensin solu G7 ja kirjoita seuraava kaava.
=INDEX(C5:C16,MATCH(1,(B5:B16>400)*(E5:E16>40000),0),1)

  • Paina sen jälkeen Kirjoita Tämän seurauksena olemme löytäneet työntekijän, jolla on - ID suurempi kuin 400 ja palkka on suurempi kuin $40000 , Richard Samuelson .

Kaavan erittely
  • B5:B16>400 käy läpi kaikki Tunnukset sarakkeessa B ja palauttaa array of TRUE ja FALSE , TRUE kun ID on suurempi kuin 400 , muuten FALSE .
  • E5:E16>40000 käy läpi kaikki palkat sarakkeessa E ja palauttaa array of TRUE ja FALSE , TRUE kun palkka on suurempi kuin $40,000 , muuten VÄÄRIN.
  • (B5:B16>400)*(E5:E16>40000) kerrotaan kaksi taulukkoa TRUE ja FALSE ja palauttaa 1 kun ID on suurempi kuin 400 ja palkka on suurempi kuin $40,000 . Muuten palaa 0 .
  • MATCH(1,(B5:B16>400)*(E5:E16>40000),0) käy läpi joukon (B5:B16>400)*(E5:E16>40000) ja palauttaa ensimmäisen sarjanumeron 1 se kohtaa.
  • Tässä tapauksessa se palauttaa arvon 5, koska ensimmäinen 1 on sarjanumerossa 5.
  • Vihdoinkin, INDEX(C5:C16,MATCH(1,(B5:B16>400)*(E5:E16>40000),0),1) palauttaa työntekijän nimen alueelta C5:C16 , jonka rivinumero on yhtä suuri kuin tulosteen MATCH funktio ja sarakkeen numero yhtä suuri kuin 1 .
Huomautukset Tämä on Array kaava Älä siis unohda painaa Ctrl + Shift + Enter ellet ole Office 365 .
  • Tämä on vaadittu työntekijä, jolla on ID suurempi kuin 400 ja palkka on suurempi kuin $40,000 Jos ymmärrät tämän, voitko kertoa minulle kaavan, jolla löydetään työntekijä, joka liittyi palvelukseen. ennen 31. joulukuuta 2009 mutta saa silti palkkaa alle 25 000 dollaria .
  • Kirjoita sen jälkeen alla oleva kaava soluun G7 .
=INDEX(C5:C16,MATCH(1,(D5:D16

  • Näin ollen osuma Kirjoita . Lisäksi saat Angela Hopkins kaavan tuottona.

Lue lisää: 7 tyyppistä hakua, jota voit käyttää Excelissä

1.2 XLOOKUP-funktion käyttäminen

Voimme suorittaa edellisen tehtävän käyttämällä XLOOKUP Excelin toiminto myös. Mutta muista, XLOOKUP on saatavilla vain Office 365 . Ennen kuin siirrytään pääasiaan, voit vilkaista pääkohdan XLOOKUP Excelin toiminto. Nyt löydämme työntekijän, jolla on palkkaluokkaa ID suurempi kuin 400 ja palkka on suurempi kuin $40,000 käyttämällä XLOOKUP Seurataan alla olevia ohjeita oppiaksemme!

Vaiheet:

  • Kirjoita ensin alla oleva kaava soluun G7 .
=XLOOKUP(1,(B5:B16>400)*(E5:E16>40000),C5:C16)

  • Tämän seurauksena meillä on sama työntekijä kuin aiemmin, Richard Samuelson . Tämä on sen työntekijän nimi, jolla on ID suurempi kuin 400 ja palkka on suurempi kuin $40,000 .

Kaavan erittely
  • (B5:B16>400)*(E5:E16>40000) palauttaa array of 1 ja 0 , 1 kun ID on suurempi kuin 400 ja palkka on suurempi kuin $40,000 . 0 muuten.
  • XLOOKUP(1,(B5:B16>400)*(E5:E16>40000),C5:C16) ensin etsitään 1:n arvoa matriisista (B5:B16>400)*(E5:E16>40000). Kun se löytää sellaisen, se palauttaa arvon sen viereisestä solusta alueella C5:C16 .

Lue lisää: Kuinka käyttää LOOKUP-funktiota Excelissä (4 sopivaa esimerkkiä)

1.3 FILTER-toiminnon soveltaminen

The INDEX-MATCH ja XLOOKUP kaavalla on yksi rajoitus. Jos useampi kuin yksi arvo täyttää annetut kriteerit, ne palauttavat vain ensimmäisen arvon. Esimerkiksi aiemmassa esimerkissä, jos katsot tarkkaan, huomaat, että on olemassa kaksi työntekijät, joilla on ID suurempi kuin 400 ja palkka on suurempi kuin $40,000 Ne ovat Richard Samuelson ja Usman Malik. Mutta INDEX-MATCH ja XLOOKUP kaavat palauttavat vain ensimmäinen työntekijä, Richard Samuelson Jos haluat saada kaikki arvot, jotka täyttävät annetut kriteerit, voit käyttää komentoa SUODATIN toiminto Excelissä. Mutta muista, että SUODATIN toiminto on myös käytettävissä vain Office 365 .

Vaiheet:

  • Selvittääksemme työntekijät, joilla on ID suurempi kuin 400 ja palkka on suurempi kuin $40,000 ... SUODATIN kaava on:
=FILTER(C5:C16,(B5:B16>400)*(E5:E16>40000))

  • Tämän jälkeen meillä on tällä kertaa kaikki työntekijät, jotka täyttävät kaikki kriteerit, Richard Samuelson ja Usman Malik .

Kaavan erittely
  • (B5:B16>400)*(E5:E16>40000) palauttaa array of 1 ja 0 , 1 kun tunnus on yli 400 ja palkka on yli 40 000 dollaria. 0 muutoin (katso INDEX-MATCH jakso).
  • FILTER(C5:C16,(B5:B16>400)*(E5:E16>40000)) käy läpi kaikki arvot matriisissa (B5:B16>400)*(E5:E16>40000), ja kun se löytää 1 , se palauttaa viereisen arvon alueelta C5:C16 .
  • Näin saamme kaikki työntekijät, joilla on ID suurempi kuin 400 ja palkka on suurempi kuin $40,000 .
  • Jos ymmärrät tämän, voitko kertoa minulle kaavan, jolla saadaan selville työntekijät, jotka ovat liittyneet palvelukseen vuosina 1. tammikuuta 2014, ja 31. joulukuuta 2016 , mutta sai palkkaa vähintään 30 000 dollaria Olet oikeassa. Kaava on seuraava:
=FILTER(C5:C16,(D5:D16>=DATE(2014,1,1))*(D5:D16=30000))

Lue lisää: Kuinka etsiä useita arvoja Excelissä (10 tapaa)

Menetelmä 2: Etsi useita TAI-tyypin kriteerejä

Nyt yritämme etsiä joitakin arvoja, jotka täyttävät useita kriteerejä. TAI tyyppi. Tässä, TAI tyyppiset kriteerit tarkoittavat, että yhden arvon on täytettävä vähintään yksi kriteeri kaikista kriteereistä, jotta se voidaan valita. Yritetään löytää työntekijä, joka on liittynyt palvelukseen ennen kuin 1 tammikuu, 2010 tai saa palkkaa, joka on suurempi kuin $30,000 .

2.1 INDEX- ja MATCH-funktioiden yhdistäminen päivämääräalueella

Klikkaa tästä vierailemaan INDEX toiminto ja klikkaa tästä siirtyäksesi MATCH toimintoa ennen kuin jatkat, jos haluat.

Vaiheet:

  • The INDEX-MATCH kaava on alla olevan kaavaruudun mukainen.
=INDEX(C5:C16,MATCH(TRUE,((D5:D1630000))>0,0),1)

  • Katsokaa, meillä on Jack Simpson , ensimmäinen työntekijä, jonka liittymispäivä on ennen 1. tammikuuta 2010 tai palkka yli 30 000 dollaria . Mutta työntekijöitä on paljon enemmän. INDEX-MATCH, saamme vain ensimmäisen.
  • Kokoamme kaikki työntekijät yhteen myöhemmin käyttämällä komentoa SUODATIN Tämä on vaadittu työntekijä, joka vastaa vähintään yhtä kriteeriä.

Kaavan erittely
  • D5:D16 ="" strong=""> palauttaa array of TRUE ja FALSE . TRUE kun sarakkeessa D on pienempi kuin 1. tammikuuta 2010. FALSE muuten.
  • E5:E16>30000 palauttaa myös array of TRUE ja FALSE . TRUE kun palkka on yli 30 000 dollaria. FALSE muuten.
  • (D5:D1630000) lisää nämä kaksi matriisia ja palauttaa toisen matriisin, joka on muotoa 0, 1, tai 2 . 0 kun mikään kriteeri ei täyty, 1 kun vain yksi kriteeri täyttyy ja 2 kun molemmat kriteerit täyttyvät.
  • ((D5:D1630000))>0 käy läpi kaikki arvot array (D5:D1630000) ja palauttaa TRUE jos arvo on suurempi kuin 0 ( 1 ja 2 ), ja FALSE muutoin ( 0 ).
  • MATCH(TRUE,((D5:D1630000))>0,0) käy läpi kaikki arvot matriisissa ((D5:D1630000))>0 ja palauttaa ensimmäisen sarjanumeron, jossa se saa arvon TRUE .
  • Tässä tapauksessa palaa 3 koska ensimmäinen TRUE on sarjamuodossa 3 .
  • Vihdoinkin, INDEX(C5:C16,MATCH(TRUE,((D5:D1630000))>0,0),1) palauttaa työntekijän nimen alueelta C5:C16 sarjanumeron kanssa, jonka palauttaa MATCH toiminto.

Jos ymmärrät tämän, voitko kertoa minulle kaavan, jolla löydetään työntekijä, jolla on ID alle 300, tai liittymispäivä alle tammikuun 1, 2012, tai palkka on suurempi kuin $30,000 ?

Olet oikeassa. Kaava on seuraava:

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

Lue lisää: Tekstin etsiminen Excelissä (7 sopivaa menetelmää)

2.2 XLOOKUP-funktion soveltaminen

Voit suorittaa saman tehtävän käyttämällä XLOOKUP toiminto Excelissä. XLOOKUP on saatavilla vain Office 365 .

Vaiheet:

  • Kaava, jolla etsitään työntekijä, jonka liittymispäivä on ennen tammikuuta. 1, 2010, tai palkka on suurempi kuin $30,000 on:
=XLOOKUP(TRUE,((D5:D1630000))>0,C5:C16)

  • Meillä on sama työntekijä kuin aiemmin, Jack Simpson . Mutta kuten INDEX-MATCH kaava, useampi työntekijä täyttää annetut kriteerit. Meillä on vain ensimmäinen.

Kaavan erittely
  • ((D5:D1630000))>0 palauttaa TRUE kun vähintään toinen näistä kahdesta kriteeristä täyttyy, muuten FALSE Ks. edellä oleva kohta.
  • XLOOKUP(TRUE,((D5:D1630000))>0,C5:C16) palauttaa sitten työntekijän nimen sarakkeesta C5:C16 , jolloin se saa ensimmäisen TRUE .

Lue lisää: Kuinka etsiä arvoa toisesta Excel-arkista (3 helppoa menetelmää)

2.3 FILTER-toiminnon käyttäminen

Lopuksi suoritamme saman tehtävän käyttämällä komentoa SUODATIN funktio Excelissä. SUODATIN toiminto on käytettävissä vain Office 365 . Tällä kertaa saamme kaikki työntekijät, jotka liittyivät ennen kuin 1. tammikuuta 2010, tai saivat palkkaa yli $30,000 .

Vaiheet:

  • Kaava on sama kuin alla olevassa kaavaruudussa.
=FILTER(C5:C16,((D5:D1630000))>0)

  • Näin se palauttaa kaikki työntekijät, jotka täyttävät vähintään yhden annetuista kriteereistä.
  • Tällä kertaa meillä on kaikki työntekijät, jotka täyttävät annetut kriteerit, liittymispäivä ennen vuoden 2000 alkua. 1. tammikuuta 2010, tai palkka suurempi kuin $30,000 .

Kaavan erittely
  • ((D5:D1630000))>0 palauttaa TRUE kun vähintään toinen näistä kahdesta kriteeristä täyttyy, muutoin FALSE . Katso INDEX-MATCH jakso.
  • FILTER(C5:C16,((D5:D1630000))>0) käy läpi kaikki alueen solut C5:C16 mutta palauttaa vain ne, kun se kohtaa tiedoston TRUE .

Lue lisää: Taulukon etsiminen Excelissä (8 menetelmää)

Päätelmä

Näiden menetelmien avulla voit hakea useamman kriteerin täyttävää arvoa mistä tahansa datajoukosta. Tiedätkö muita menetelmiä tai onko sinulla kysyttävää? Kysy rohkeasti meiltä.

Hugh West on erittäin kokenut Excel-kouluttaja ja analyytikko, jolla on yli 10 vuoden kokemus alalta. Hän on koulutukseltaan laskentatoimen ja rahoituksen kandidaatti sekä kauppatieteiden maisteri. Hughilla on intohimo opettamiseen, ja hän on kehittänyt ainutlaatuisen opetusmenetelmän, jota on helppo seurata ja ymmärtää. Hänen asiantuntemuksensa Excelistä on auttanut tuhansia opiskelijoita ja ammattilaisia ​​maailmanlaajuisesti parantamaan taitojaan ja menestymään urallaan. Blogissaan Hugh jakaa tietämyksensä maailman kanssa tarjoamalla ilmaisia ​​Excel-opetusohjelmia ja verkkokoulutusta auttaakseen yksilöitä ja yrityksiä saavuttamaan täyden potentiaalinsa.