Enhavtabelo
Hodiaŭ mi montros kiel krei dinamikan liston bazitan sur unuopaj aŭ pluraj kriterioj en Excel.
Elŝutu Praktikan Laborlibron
Dinamika Listo Bazita sur Criteria.xlsx
Kio Estas Dinamika Listo en Excel?
Dinamika listo estas listo kreita el datumaro kaj aŭtomate ĝisdatiĝas kiam iu ajn valoro en la origina datumaro estas ŝanĝita, aŭ novaj valoroj estas aldonitaj al la origina datumaro.
En la donita bildo, ni havas liston de la nomoj de ĉiuj studentoj, kiuj ricevis notojn pli grandajn ol 60 en la ekzameno.
Nun se vi ŝanĝas la markojn de Jennifer Marlo de 68 al 58 , kaj aldonas novan studenton nomitan Ross Smith kun notoj 81 en la tabelo, la listo estos ĝustigu sin aŭtomate.
Tio ĉi nomiĝas dinamika listo.
3 Manieroj Krei Dinamika Listo en Excel Bazita sur Kriterioj
Ĉi tie ni havas datuman aron kun la Studentidentigiloj, Nomoj, kaj Markoj de kelkaj studentoj en Lernejo nomata Sunflora infanĝardeno.
Nia celo hodiaŭ estas fari dinamikan liston bazitan sur kriterioj de ĉi tiu datumaro. Ni uzos kaj unuopan kaj plurajn kriteriojn hodiaŭ.
1. Uzante FILTRI kaj OFFSET-Funkciojn (Por Novaj Versioj de Excel)
Unue, ni uzos kombinaĵon de la FILTRI , OFFSET , kaj COUNTA funkcioj de Excel.
La funkcio FILTRI disponeblas nur en Office 365 . Do ĉi tio estas nur por tiuj, kiuj havas abonon Office 365 .
Kazo 1: Bazite sur Unuopaj Kriterioj
Ni provu fari dinamikan listo de la studentoj, kies averaĝaj notoj estas pli grandaj ol aŭ egalaj al 60 .
Vi povas uzi ĉi tiun formulon:
=FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,1),OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)
Kiel vi povas vidi, ni havas liston de ĉiuj studentoj kiuj ricevis pli ol 60 .
Kaj evidente, ĉi tio estas dinamika. listo. Vi ŝanĝas ajnan valoron en la datumaro aŭ aldonas ajnan novan valoron en la datumaro.
La listo ĝustigos aŭtomate.
Klarigo de la Formulo:
-
COUNTA(C:C)
donas la nombron da vicoj en kolumno C kiuj ne estas malplenaj. DoCOUNTA(C:C)-1
redonas la nombron da vicoj kiuj havas valorojn sen la Kolumna kaplinio ( Studenta Nomo en ĉi tiu ekzemplo). - Se vi ne faras t havas la Kolumnan Kapon , uzu
COUNTA(C:C)
-
OFFSET(C5,0,0,COUNTA(C:C)-1,1)
komencas de ĉelo C5 (Nomo de la unua studento) kaj liveras gamon de la nomoj de ĉiuj studentoj. - La funkcio OFFSET kombina kun la funkcio COUNTIF estas uzata por konservi la formulon dinamika. Se unu plia studento estas aldonita al la datumaro, la
COUNTA(C:C)-1
formulo pliiĝos je 1 kaj la OFFSET funkcio inkluzivos la studenton. - Simile,
OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60
redonas VERA por ĉiuj markoj kiuj estas pli grandaj ol aŭ egalaj al 60 . - Fine,
FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,1),OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)
redonas liston de ĉiuj studentoj, kiuj ricevis notojn pli ol 60 . - Se iu ajn nova studento estas aldonita al la datumaro,
COUNTA(C:C)-1
pliiĝas je 1 , kaj la funkcio FILTRI refreŝigas la kalkulon inkluzive de ĝi. - Tiele. la formulo ĉiam restas dinamika.
Noto:
Se vi volas ricevi la markojn kune kun la nomoj en la listo, simple ŝanĝu la kvinan argumenton de la unua OFFSET funkcio de 1 ĝis 2 .
=FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,2),OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)
Kazo 2: Surbaze de Multoblaj Kriterioj
Ni provu ĉi-foje plurajn kriteriojn.
Ni provos fari dinamikan liston de la studentoj, kiuj ricevis markojn pli ol aŭ egalajn al 60, sed kies identigiloj estas malpli ol aŭ egalaj al 200 .
Vi povas uzi ĉi tiun formulon:
=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))
Kiel vi povas vidi, ni havas liston de ĉiuj studentoj kiuj ricevis notojn pli ol 60 kaj havas ID oj malpli ol 200 .
Kaj ne necesas diri, ĉi tio estas dinamika listo.
Se vi ŝanĝas iun ajn valoron aŭ aldonas novan studenton al la datumaro, la listo ĝustigos aŭtomate.
Klarigo de la Formulo:
- Ĉi tie ni multobligis du dinamikajn intervalojn de kriterioj,
(OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200)
- Se vi havas pli ol 2 kriteriojn, multipliku ĉiujn intervalojn de kriterioj sammaniere.
- La cetero estas sama kiel la antaŭa ekzemplo (de unuopaj kriterioj).La funkcio OFFSET en kombinaĵo kun la funkcio COUNTA estis uzata por konservi la formulon dinamika.
Noto:
Se vi volas vidi ĉiujn kolumnojn en la listo ( Kolumnoj B, C, kaj D en ĉi tiu ekzemplo), ŝanĝu la unuan argumenton de la unua OFFSET funkcio al la unua kolumno ( B5 en ĉi tiu ekzemplo), kaj la kvina argumento al la totala nombro da kolumnoj ( 3 en ĉi tiu ekzemplo).
=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))
Legu Pli: Excel Kreu Dinamika Listo de Tabelo (3 Facilaj Manieroj)
2. Uzante INDEX-MATCH kun Aliaj Funkcioj (Por Malnovaj Versioj)
Tiuj kiuj ne havas Abono de Office 365 ne povas uzi la ĉi-supran formulon.
Mi montras pli kompleksan manieron por tiuj, kiuj uzas la pli malnovan version de Excel, uzante la INDEX-MATCH, OFFSET, SMALL, IF, ROW, COUNTIF, kaj COUNTIFS funkcioj de Excel. Notu, ke ĉi tiuj formuloj estas tabelaj formuloj. Do, por apliki ilin en pli malnovaj versioj de Excel, vi devas premi Ktrl+Shift+Enter anstataŭ nur Enter.
Kazo 1: Bazita sur Unuopaj Kriterioj
La formulo por krei dinamikan liston de la studentoj kiuj akiris pli ol aŭ egalan al 60 estos:
=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)
Kiel vi povas vidi, ni denove ricevis la nomojn de ĉiuj studentoj, kiuj ricevis pli ol aŭ egalan al 60 .
Ĉi-foje ni suprenirisordo de la nombroj.
Kaj jes, la listo estas dinamika. Aldonu novan studenton al la datumserio, aŭ ŝanĝu la markojn de iu ajn studento en la datumaro.
La listo ĝustigos sin aŭtomate.
Klarigo pri la Formulo:
- Jen C:C estas la kolumno el kiu ni volas ĉerpi la enhavon de la listo ( Studenta Nomo en ĉi tiu ekzemplo). Vi uzas vian.
- D:D estas la kolumno kie kuŝas la kriterio ( Averaĝaj Markoj en ĉi tiu ekzemplo). Vi uzas vian.
- C5 kaj D5 estas la ĉeloj de kie miaj datumoj estis komencitaj (ĝuste sub la Kolumnaj Kapoj ). Vi uzas vian.
- “>=60” estas mia kriterio (Pli granda aŭ egala al 60 en ĉi tiu ekzemplo). Vi uzas vian.
- Krom ĉi tiuj malmultaj ŝanĝoj, konservu la reston de la formulo senŝanĝa kaj uzu ĝin en via datumaro. Vi ricevos dinamikan liston laŭ via dezirata kriterio.
Kazo 2: Bazita sur Multoblaj Kriterioj
La INDEX-MATCH formulo por la dinamika listo bazita sur multoblaj kriterioj estas iom pli kompleksa. Tamen, mi montras ĝin.
La formulo por ricevi la nomojn de la studentoj kiuj ricevis notojn pli grandajn aŭ egalajn al 60 , sed havas ID ojn malpli ol 200 estos;
=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)
Klarigo de la formulo:
- Jen C:C estas la kolumno el kiu ni volas alĉerpi la enhavon de la listo ( Studenta Nomo en ĉi tiu ekzemplo). Vi uzas vian.
- B:B kaj D:D estas la kolumnoj kie troviĝas la kriterioj ( Studenta ID kaj Mezumaj Markoj en ĉi tiu ekzemplo). Vi uzas vian.
- B5, C5, kaj D5 estas la ĉeloj de kie miaj datumoj estis komencitaj (ĝuste sub la Kolumnaj Kapoj ). Vi uzas vian.
- Mi ĉi tie multobligis du kriteriojn:
(OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200)
.Se vi havas pli ol du kriteriojn, multobligu laŭe. - Mi denove uzis la du kriteriojn. ene de ĉi tiu funkcio COUNTIFS :
COUNTIFS(B:B,"=60")
. Vi uzas viajn laŭe. - Konservu la reston de la formulo senŝanĝa kaj uzu ĝin en via datumaro. Vi ricevos dinamikan liston kun multoblaj kriterioj.
Legu Pli: Kiel Fari Dinamikan Datuman Validad Liston Uzante VBA en Excel
3 . Krei Dinamikan Malsupren Liston Bazita sur Kriterioj Uzanta Datuman Validation Ilo
Nun ni kreis la dinamikan liston. Se vi volas, vi povas krei dinamikan falliston en iu ajn ĉelo de via laborfolio.
- Por krei la dinamikan falliston, elektu iun ajn ĉelon en via laborfolio. kaj iru al Datumoj > Datenvalidigo > Valumado de datumoj sub la sekcio Iloj de datumoj .
- Vi ricevos la Valumado de datumoj dialogujo. Sub la opcio Permesi , elektu Listo . Kaj sub la opcio Fonto ,enigu la referencon de la unua ĉelo kie la listo estas en via laborfolio kune kun HashTag (#) ( $E$5# en ĉi tiu ekzemplo).
- Tiam alklaku OK . Vi ricevos falliston en via elektita ĉelo tiel.
Legu Pli: Kiel Krei Dinamikan Falliston Uzante VBA en Excel
Kiel Krei Dinamika Unika Listo en Excel Bazita sur Kriterioj
En ĉi tiu sekcio, ni montros kiel krei unikan liston en Excel bazita sur kriterioj. Ni uzos kombinaĵon de UNIKA kaj FILTRI funkcioj. Ni modifis la datumaron kaj aldonis la plej ŝatatajn ludojn de ĉiu studento. Nun, volas scii la nomon de ludoj forigante duplikatojn kun kriterioj. La kriterioj estas averaĝaj notoj de la studentoj devas esti pli grandaj ol 60 .
📌 Paŝoj:
- Metu la formulon bazitan sur la kombinaĵo de UNIKA kaj FILTRI funkcioj sur Ĉelo G5 .
=UNIQUE(FILTER(E5:E25,(D5:D25>60)))
Ni ricevas unikan liston bazitan sur kriterioj.
Klarigo pri la Formulo:
- FILTRI (E5:E25,(D5:D25>60)
Ĉi tio filtras la valorojn de Gamo E5:E25 , kun kondiĉo ke averaĝaj notoj devas esti super 60 .
Rezulto: [Teniso, Flugpilko, Rugbeo, Teniso, Futbalo, Rugbeo, Rugbeo, Futbalo]
- UNIKA (FILTRILO(E5:E25,(D5:D25>60)))
Tio revenas ĉio unikavaloroj de la antaŭa rezulto.
Rezulto: [Teniso, Flugpilko, Rugbeo, Futbalo]
Konkludo
Uzante ĉi tiujn metodoj, vi povas krei dinamikan liston bazitan sur unuopaj aŭ pluraj kriterioj en ajna datuma aro en Excel. Bonvolu rigardi nian retejon ExcelWIKI kaj doni viajn sugestojn en la komenta skatolo.