Si të krijoni listë dinamike në Excel bazuar në kritere (3 mënyra)

  • Shperndaje Kete
Hugh West

Sot do të tregoj se si të krijoj një listë dinamike bazuar në kritere të vetme ose të shumëfishta në Excel.

Shkarko librin e punës praktike

Lista dinamike e bazuar në Criteria.xlsx

Çfarë është një listë dinamike në Excel?

Një listë dinamike është një listë që krijohet nga një grup të dhënash dhe përditësohet automatikisht kur ndonjë vlerë në grupin e të dhënave origjinale ndryshohet ose vlera të reja shtohen në grupin origjinal të të dhënave.

Në imazhin e dhënë, kemi një listë me emrat e të gjithë nxënësve që kanë marrë nota më të mëdha se 60 në provim.

Tani nëse ndryshoni notat e Jennifer Marlo nga 68 58 dhe shtoni një student të ri të quajtur Ross Smith me notat 81 në tabelë, lista do të rregullohet vetvetiu automatikisht.

Kjo quhet një listë dinamike.

3 mënyra për të krijuar një listë dinamike në Excel bazuar në kritere

Këtu kemi një grup të dhënash me ID-të e nxënësve, Emrat, dhe Shenjat të disa nxënësve në një shkollë të quajtur kopshti i lulediellit.

Objektivi ynë sot është të bëjmë një listë dinamike bazuar në kriteret nga ky grup të dhënash. Sot do të përdorim kritere të vetme dhe të shumëfishta.

1. Përdorimi i funksioneve FILTER dhe OFFSET (për versionet e reja të Excel)

Së pari, ne do të përdorim një kombinim të FILTER , OFFSET dhe COUNTA funksionet e Excel.

Funksioni FILTER disponohet vetëm në Office 365 . Pra, kjo është vetëm për ata që kanë një abonim Office 365 .

Rasti 1: Bazuar në kriteret e vetme

Le të përpiqemi të bëjmë një dinamikë lista e nxënësve notat mesatare të të cilëve janë më të mëdha ose të barabarta me 60 .

Mund të përdorni këtë formulë:

=FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,1),OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)

Siç mund ta shihni, ne kemi një listë të të gjithë studentëve që kanë marrë më shumë se 60 .

Dhe padyshim, kjo është një dinamikë listë. Ju ndryshoni çdo vlerë në grupin e të dhënave ose shtoni ndonjë vlerë të re në grupin e të dhënave.

Lista do të rregullohet automatikisht.

Shpjegimi i Formulës:

  • COUNTA(C:C) kthen numrin e rreshtave në kolonën C që nuk janë bosh. Pra COUNTA(C:C)-1 kthen numrin e rreshtave që kanë vlera pa Titullën e kolonës ( Emri i studentit në këtë shembull).
  • Nëse nuk të keni Titullën e kolonës , përdorni COUNTA(C:C)
  • OFFSET(C5,0,0,COUNTA(C:C)-1,1) fillon nga qeliza C5 (Emri i studentit të parë) dhe kthen një sërë emrash të të gjithë studentëve.
  • Funksioni OFFSET në kombinim me funksionin COUNTIF është përdorur për të mbajtur formulën dinamike. Nëse grupit të të dhënave i shtohet edhe një student, formula COUNTA(C:C)-1 do të rritet me 1 dhe funksioni OFFSET do të përfshijë studentin.
  • Në mënyrë të ngjashme, OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60 kthehet E VËRTETË për të gjitha shenjat që janë më të mëdha ose të barabarta me 60 .
  • Më në fund, FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,1),OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60) kthehet një listë e të gjithë studentëve që kanë marrë nota më shumë se 60 .
  • Nëse çdo student i ri shtohet në grupin e të dhënave, COUNTA(C:C)-1 rritet me 1 dhe funksioni FILTER rifreskon llogaritjen duke e përfshirë atë.
  • Kështu. formula mbetet gjithmonë dinamike.

Shënim:

Nëse doni të merrni shenjat së bashku me emrat në listë, thjesht ndryshoni argumentin e pestë të funksioni i parë OFFSET nga 1 2 .

=FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,2),OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)

Rasti 2: Bazuar në kritere të shumta

Le të provojmë disa kritere këtë herë.

Ne do të përpiqemi të bëjmë një listë dinamike të studentëve që mori nota më shumë se ose të barabarta me 60, por ID-të e të cilëve janë më të vogla se ose të barabarta me 200 .

Mund të përdorni këtë formulë:

=FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,1),(OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200))

Siç mund ta shihni, ne kemi një listë të të gjithë studentëve që kanë marrë nota më shumë se 60 dhe kanë ID është më pak se 200 .

Dhe nuk ka nevojë të tregohet, kjo është një listë dinamike.

Nëse ndryshon ndonjë vlerë ose shton ndonjë student të ri në grupin e të dhënave, lista do të përshtatet automatikisht.

Shpjegimi i formulës:

  • Këtu kemi shumëzuar dy vargje dinamike të kritereve, (OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200)
  • Nëse keni më shumë se 2 kritere, shumëzoni të gjitha vargjet e kriteret në të njëjtën mënyrë.
  • Pjesa tjetër është e njëjtë me shembullin e mëparshëm (të kritereve të vetme).Funksioni OFFSET në kombinim me funksionin COUNTA është përdorur për të mbajtur formulën dinamike.

Shënim:

Nëse dëshironi të shihni të gjitha kolonat në listë ( Kollonat B, C, dhe D në këtë shembull), ndryshoni argumentin e parë të OFFSET-it të parë Funksioni në kolonën e parë ( B5 në këtë shembull), dhe argumenti i pestë për numrin total të kolonave ( 3 në këtë shembull).

=FILTER(OFFSET(B5,0,0,COUNTA(C:C)-1,3),(OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*

(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200))

Lexo më shumë: Excel Krijo Dynamic Lista nga tabela (3 mënyra të thjeshta)

2. Përdorimi i INDEX-MATCH me funksione të tjera (për versionet e vjetra)

Ata që nuk kanë një Abonimi Office 365 nuk mund të përdorë formulën e mësipërme.

Po tregoj një mënyrë më komplekse për ata që përdorin versionin më të vjetër të Excel, duke përdorur INDEX-MATCH, Funksionet OFFSET, SMALL, IF, ROW, COUNTIF, dhe COUNTIFS të Excel. Vini re se këto formula janë formula të grupeve. Pra, për t'i zbatuar ato në versionet më të vjetra të Excel-it, duhet të shtypni Ctrl+Shift+Enter në vend të vetëm Enter.

Rasti 1: Bazuar në Kriteret e Vetme

Formula për të krijuar një listë dinamike të studentëve që kanë marrë më shumë se ose të barabartë me 60 do të jetë:

=INDEX(OFFSET(C5,0,0,COUNTA(C:C)-1,1),MATCH(SMALL(IF(OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60,

OFFSET(D5,0,0,COUNTA(D:D)-1,1),""),ROW(A1:INDIRECT("A"&COUNTIF(D:D,">=60")))),OFFSET(D5,0,0,COUNTA(D:D)-1,1),0),1)

Siç mund ta shihni, ne kemi përsëri emrat e të gjithë studentëve që morën më shumë se ose baraz me 60 .

Kësaj radhe kemi hyrë në ngjitjerenditja e numrave.

Dhe po, lista është dinamike. Shtoni një student të ri në grupin e të dhënave ose ndryshoni shenjat e çdo studenti në grupin e të dhënave.

Lista do të rregullohet automatikisht.

Shpjegimi i Formula:

  • Këtu C:C është kolona nga e cila duam të nxjerrim përmbajtjen e listës ( Emri i studentit në këtë shembull). Ju përdorni atë tuajën.
  • D:D është kolona ku qëndron kriteri ( Shënimet mesatare në këtë shembull). Ti përdor një tënd.
  • C5 dhe D5 janë qelizat nga ku janë nisur të dhënat e mia (pak nën Titujt e kolonave ). Ti përdor një tënd.
  • “>=60” është kriteri im (Më i madh ose i barabartë me 60 në këtë shembull). Ju përdorni një tuajën.
  • Përveç këtyre pak ndryshimeve, mbajeni pjesën tjetër të formulës të pandryshuar dhe përdorni atë në grupin tuaj të të dhënave. Ju do të merrni një listë dinamike sipas kriterit tuaj të dëshiruar.

Rasti 2: Bazuar në kritere të shumta

INDEX-MATCH formula për listën dinamike të bazuar në kritere të shumta është pak më komplekse. Megjithatë, po e tregoj.

Formula për të marrë emrat e studentëve që kanë marrë nota më të mëdha se ose të barabarta me 60 , por kanë ID s më pak se 200 do të jetë;

=INDEX(OFFSET(C5,0,0,COUNTA(C:C)-1,1),MATCH(SMALL(IF((OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*

(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200),OFFSET(D5,0,0,COUNTA(D:D)-1,1),""),ROW(A1:INDIRECT("A"&COUNTIFS(B:B,"=60")))),OFFSET(D5,0,0,COUNTA(D:D)-1,1),0),1)

Shpjegimi i formulës:

  • Këtu C:C është kolona nga e cila duam tenxirrni përmbajtjen e listës ( Emri i studentit në këtë shembull). Ju përdorni atë tuajën.
  • B:B dhe D:D janë kolonat ku qëndrojnë kriteret ( ID-ja e studentit dhe Notat mesatare në këtë shembull). Ti përdor një tënd.
  • B5, C5, dhe D5 janë qelizat nga ku janë nisur të dhënat e mia (vetëm poshtë Titujt e kolonave ). Ju përdorni një tuaj.
  • Kam shumëzuar dy kritere këtu: (OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200) .Nëse keni më shumë se dy kritere, shumëzoni në përputhje me rrethanat.
  • Unë kam përdorur përsëri dy kriteret brenda këtij funksioni COUNTIFS : COUNTIFS(B:B,"=60") . Ju përdorni ato tuajat në përputhje me rrethanat.
  • Mbajeni pjesën tjetër të formulës të pandryshuar dhe përdorni atë në grupin tuaj të të dhënave. Do të merrni një listë dinamike me shumë kritere.

Lexo më shumë: Si të krijoni një listë të vërtetimit dinamik të të dhënave duke përdorur VBA në Excel

3 . Krijoni një listë dinamike rënëse bazuar në kritere duke përdorur mjetin e verifikimit të të dhënave

Tani kemi krijuar listën dinamike. Nëse dëshironi, mund krijoni një listë rënëse dinamike në çdo qelizë të fletës suaj të punës.

  • Për të krijuar listën rënëse dinamike, zgjidhni çdo qelizë në fletën tuaj të punës dhe shkoni te Të dhënat > Vleresimi i te dhenave > Validimi i të dhënave nën seksionin Veglat e të dhënave .

  • Do të merrni Vleresimi i të dhënave kuti dialogu. Nën opsionin Lejo , zgjidhni Lista . Dhe nën opsionin Burimi ,futni referencën e qelizës së parë ku është lista në fletën tuaj të punës së bashku me një HashTag (#) ( $E$5# në këtë shembull).

  • Më pas klikoni OK . Ju do të merrni një listë rënëse në qelizën tuaj të zgjedhur si kjo.

Lexo më shumë: Si të krijoni listë dinamike rënëse duke përdorur VBA në Excel

Si të krijoni një listë unike dinamike në Excel bazuar në kriteret

Në këtë seksion, ne do të tregojmë se si të krijojmë një listë unike në Excel bazuar në kriteret. Ne do të përdorim një kombinim të funksioneve UNIQUE dhe FILTER . Ne modifikuam grupin e të dhënave dhe shtuam lojërat e preferuara të secilit student. Tani, dëshironi të dini emrin e lojërave që heqin dublikatat me kritere. Kriteret janë notat mesatare të studentëve duhet të jenë më të mëdha se 60 .

📌 Hapat:

  • Vendos formulën e bazuar në kombinimin e funksioneve UNIQUE dhe FILTER Cell G5 .
=UNIQUE(FILTER(E5:E25,(D5:D25>60)))

Ne marrim një listë unike bazuar në kritere.

Shpjegimi i Formula:

  • FILTER(E5:E25,(D5:D25>60)

Kjo filtron vlerat e Sfera E5:E25 , me kusht që notat mesatare të jenë mbi 60 .

Rezultati: [Tenis, Volejboll, Rugbi, Tenis, Futboll, Rugbi, Rugbi, futboll]

  • UNIK(FILTER(E5:E25,(D5:D25>60)))

Kjo kthehet të gjitha unikevlerat nga rezultati i mëparshëm.

Rezultati: [Tenis, Volejboll, Rugbi, Futboll]

Përfundim

Përdorimi i këtyre metodat, mund të krijoni një listë dinamike bazuar në kritere të vetme ose të shumëfishta në çdo grup të dhënash në Excel. Ju lutemi hidhini një sy faqes sonë të internetit ExcelWIKI dhe jepni sugjerimet tuaja në kutinë e komenteve.

Hugh West është një trajner dhe analist me përvojë të lartë në Excel me mbi 10 vjet përvojë në industri. Ai ka një diplomë Bachelor në Kontabilitet dhe Financë dhe një Master në Administrim Biznesi. Hugh ka një pasion për mësimdhënien dhe ka zhvilluar një qasje unike të mësimdhënies që është e lehtë për t'u ndjekur dhe kuptuar. Njohuritë e tij eksperte të Excel-it kanë ndihmuar mijëra studentë dhe profesionistë në mbarë botën të përmirësojnë aftësitë e tyre dhe të shkëlqejnë në karrierën e tyre. Nëpërmjet blogut të tij, Hugh ndan njohuritë e tij me botën, duke ofruar mësime falas në Excel dhe trajnime në internet për të ndihmuar individët dhe bizneset të arrijnë potencialin e tyre të plotë.