Hoe list te generearjen basearre op kritearia yn Excel (4 metoaden)

  • Diel Dit
Hugh West

Yn Excel moatte jo soms in list generearje op basis fan kritearia. Hjoed sille wy jo sjen litte hoe't jo in list kinne generearje op basis fan kritearia. Foar dizze sesje brûke wy Excel 365, hoewol it is oan te rieden om dizze ferzje te brûken, fiel dy frij om josels te brûken.

Litte ús earst yn 'e kunde komme mei de dataset dy't de basis is fan ús foarbylden.

Hjir hawwe wy in dataset fan ferskate minsken fan ferskate lokaasjes tegearre mei har auto's. Mei dizze gegevens sille wy in list foarmje op basis fan kritearia.

Tink derom dat dit in basistabel is mei dummygegevens om dingen ienfâldich te hâlden. Yn in praktysk senario kinne jo in folle gruttere en kompleksere dataset tsjinkomme.

Oefenwurkboek

Jo binne wolkom om it oefenwurkboek te downloaden fan de folgjende keppeling.

Excel Generearje list basearre op Criteria.xlsx

Generearje list basearre op kritearia

Bygelyks, wy sille meitsje in list fan minsken basearre op harren regio.

Om't it in lytse dataset is, witte wy dat d'r 4 regio's binne. Wy hawwe de nammen fan 'e regio's opslein en sille de list fine op basis fan' e regio.

1. INDEX-SMALL Combination brûke om list te generearjen

Hjir hawwe wy in list nedich, dus ús formule moat ien wêze dat sil helje de meardere wearden út de tabel. Foar dy taak kinne wy ​​in kombinaasje fan INDEX en LYTTE funksjes brûke.

Om dizze funksjes te kennen, kontrolearje dizze artikels: YNDEX, LYT.

Tegearre mei dizze twa sille wy in pear helpfunksjes nedich hawwe, IF , RIJ en IFERROR . Kontrolearje de artikels foar fierdere ynformaasje: IF, ROW, IFERROR.

Litte wy de formule ûndersykje

=IFERROR(INDEX($B$2:$B$12,SMALL(IF($C$2:$C$12=$G$2,ROW($B$2:$B$12)),ROW(1:1))-1,1),"")

Hjir hat elke funksje syn doel. De funksje INDEX jout de wearde werom fan de array B2:B12 (Nammekolom) en it grutte SMALL -diel jout it rigenûmer, dat ophelle wurde moat.

IF, binnen de SMALL, kontrolearret oft de kritearia oerienkomme of net, en de funksje ROW iterearret oer de sellen fan 'e kolom .

Dan jout de bûtenste RIJ de k-ste wearde foar de funksje SMALL . Mei-elkoar jouwe dizze funksjes it rigenûmer werom en INDEX jout it resultaat werom.

IFERROR om te gean mei elke flater dy't út de formule ûntstean kin.

Sleep nei ûnderen jo krije alle minsken út de opjûne regio.

Skriuw op deselde manier de formule foar de oare regio's (de formule is itselde, ferpleatse allinich de sel).

In alternative INDEX-SMALL Combination

Wy kinne de formule op in alternative manier skriuwe. De funksjes brûkt foar de formule sille itselde wêze as foarige. Allinnich de presintaasje sil oars wêze.

Litte wy de formule sjen

=IFERROR(INDEX($B$2:$B$12,SMALL(IF($C$2:$C$12=G$2,ROW($B$2:$B$12)-1),ROW(1:1)),1),"")

Opnij moatte jo CTRL + SHIFT + ENTER drukke foar it útfieren fan deformule.

Der is in lyts ferskil tusken dizze twa formules, kinne jo se ûnderskiede?

Ja, yn ús eardere formule hawwe wy 1 by lutsen it ein fan it LYT diel, mar hjir hawwe wy 1 yn it IF -diel ôflutsen.

It doel fan it subtrahearjen fan 1 is kanalisearjen nei it juste rigenûmer. Earder hawwe wy dat op 't lêst dien, hjir diene dat earder en gean troch nei de fierdere operaasje.

Skriuw de formule foar de oare kritearia om de list te foltôgjen.

Lês mear: Hoe kinne jo in list meitsje binnen in sel yn Excel (3 rappe metoaden)

2. De AGGREGATE-funksje brûke om list te generearjen

Excel jout jo in funksje neamd AGGREGATE dy't jo brûke kinne om ferskate taken út te fieren. Hjir kinne wy ​​de funksje brûke om in list te generearjen op basis fan kritearia.

De funksje AGGREGATE jout in aggregearre berekkening werom lykas AVERAGE, COUNT, MAX, ensfh.

De syntaksis foar de AGGREGATE funksje is as folget:

AGGREGATE(function_number,behavior_options, range)

function_number: Dit getal spesifiseart hokker berekkening makke wurde moat.

behavior_options: Stel dit yn mei nûmer. Dit getal jout oan hoe't de funksje him gedraacht sil.

berik: Berik dat jo aggregearje wolle.

De funksje AGGREGATE docht ferskate taken sadat nûmers fan funksjes binne foarôf definieare binnen it. Wy listje in pear faak brûkte funksjesifers

24>21>25>MIN 25>5 24>21>25>PRODUCT
Funksje Funksjenûmer
AVERAGE 1
COUNTA 2
COUNTA 3
MAX 4 6
SUM 9
GROOT 14
LYT 15

Om mear te witten oer de funksje, besykje de Microsoft Support ​​side.

Litte wy no de formule sjen,

=IFERROR(INDEX($B$2:$B$12,AGGREGATE(15,6,IF($C$2:$C$12=G$2,ROW($B$2:$B$12)-1),ROW(1:1)),1),"")

Hjir tegearre mei de AGGREGATE funksje hawwe wy INDEX<8 brûkt>. INDEX befettet de array dy't wearden werombringt op basis fan wedstriden fûn yn it lettere diel fan 'e formule.

Jo kinne sjen dat wy 15 brûkt hawwe as de function_number in AGGREGATE . Ut 'e boppesteande tabel kinne jo 15 -oanroppen sjen foar de SMALL -funksjeoperaasje. No kinne jo relatearje?

Ja, wy hawwe de formule INDEX-SMALL útfierd op 'e manier fan 'e funksje AGGREGATE .

6 foar de gedrachsopsje, dy't foutwearden negearje oanjout.

Skriuw de formule foar de rest fan de wearden.

Fergelykbere lêzingen

  • Hoe kinne jo in taaklist meitsje yn Excel (3 maklike metoaden)
  • In ferstjoerlist oanmeitsje yn Excel (2 metoaden)
  • Hoe kinne jo in nûmere list yn Excel meitsje (8 metoaden)

3. Generearje unike list mei INDEX-MATCH-COUNTIF

Wy kinne in unike list oanmeitsje op basis fan kritearia. Dêrfoar kinne wy ​​de kombinaasje fan INDEX , MATCH en COUNTIF brûke.

COUNTIF telt sellen yn in berik dat foldocht oan ien betingst. En MATCH fynt de posysje fan in opsykwearde yn in berik. Foar mear oer dizze funksjes besykje dizze artikels: MATCH, COUNTIF.

Litte wy de formule ûndersykje

=IFERROR(INDEX($B$2:$B$12, MATCH(0, IF(G$2=$C$2:$C$12, COUNTIF($G$2:$G2, $B$2:$B$12), ""), 0)),"")

Yn dizze formule: B2: B12 is it kolomberik dat de unike wearden befettet dy't jo útpakke wolle, C2:C12 is de kolom dy't it kritearium befettet dat jo basearre binne G2 jout it kritearium oan.

Binnen de funksje MATCH hawwe wy 0 levere as de lookup_array, en foar lookup_range hawwe wy de IF brûkt diel mei COUNTIF . Dat, dit diel jout de wearde werom sa lang as 0 wurdt fûn. De wearde hjir wurket as it rigenûmer foar INDEX .

Sleep it nei ûnderen en jo fine alle unike wearden.

Ferjit net de CTRL+SHIFT + ENTER te brûken om de formule út te fieren.

Dit wie in earfolle fermelding fan de oanpak om in unyk te generearjen list. Folgje dit artikel om te witten oer it generearjen fan in unike list basearre op kritearia .

4. FILTER-funksje brûke om list op basis fan kritearia te generearjen

As jo ​​Excel 365 brûke, dan kinne jo de taak útfiere mei ien ynboude-yn funksje neamd FILTER .

De funksje FILTER filtert in berik fan gegevens basearre op opjûne kritearia en ekstrakt oerienkommende records. Om te witten oer de funksje, besykje dit artikel: FILTER .

No sil ús formule de folgjende wêze,

=FILTER($B$2:$B$12,$C$2:$C$12=G$2)

B2:B12 is de array dy't moat wurde filtere. Dan hawwe wy de betingst levere, basearre op wat wy de list sille generearje.

Hjir hoege jo de formule net nei ûnderen te slepen, dit sil yn ien kear alle wearden leverje en de list folbringe.

Lês mear: Hoe meitsje jo alfabetyske list yn Excel (3 manieren)

Konklúzje

Dat is alles foar hjoed. Wy hawwe ferskate manieren neamd om in list te generearjen op basis fan kritearia. Hoopje dat jo dit nuttich fine. Fiel jo frij om kommentaar te jaan as iets dreech te begripen liket. Lit ús witte hokker oare metoaden wy hawwe mist hjir.

Hugh West is in tige betûfte Excel-trainer en analist mei mear as 10 jier ûnderfining yn 'e yndustry. Hy hat in bachelorstitel yn boekhâlding en finânsjes en in masterstitel yn bedriuwsadministraasje. Hugh hat in passy foar lesjaan en hat in unike lesoanpak ûntwikkele dy't maklik te folgjen en te begripen is. Syn saakkundige kennis fan Excel hat tûzenen studinten en professionals wrâldwiid holpen har feardigens te ferbetterjen en útblinke yn har karriêre. Troch syn blog dielt Hugh syn kennis mei de wrâld, en biedt fergese Excel-tutorials en online training om partikulieren en bedriuwen te helpen har folsleine potensjeel te berikken.