Բովանդակություն
Այսօր ես ցույց կտամ, թե ինչպես ստեղծել դինամիկ ցուցակ՝ հիմնված մեկ կամ մի քանի չափանիշների վրա Excel-ում:
Ներբեռնեք պրակտիկայի աշխատանքային գիրքը
Դինամիկ ցուցակ՝ հիմնված Criteria.xlsx-ի վրա
Ի՞նչ է դինամիկ ցուցակը Excel-ում:
Դինամիկ ցուցակը ցանկ է, որը ստեղծվում է տվյալների հավաքածուից և ինքնաբերաբար թարմացվում է, երբ սկզբնական տվյալների հավաքածուում որևէ արժեք փոխվում է կամ նոր արժեքներ ավելացվում սկզբնական տվյալների հավաքածուին:
Տվյալ պատկերում մենք ունենք բոլոր այն ուսանողների անունների ցանկը, ովքեր քննության ժամանակ ստացել են 60 -ից բարձր գնահատականներ։
Այժմ, եթե փոխեք Ջենիֆեր Մարլոյի գնահատականները 68 -ից 58 , և աղյուսակում ավելացնեք Ռոս Սմիթ անունով նոր ուսանողին 81 գնահատականներով, ցուցակը կ ինքնաբերաբար կարգավորվում է:
Սա կոչվում է դինամիկ ցուցակ:
Չափանիշների հիման վրա Excel-ում դինամիկ ցուցակ ստեղծելու 3 եղանակ
Այստեղ մենք ունենք տվյալների հավաքածու՝ Աշակերտների ID-ներով, Անուններով, և Նշաններով որոշ աշակերտների մի դպրոցի, որը կոչվում է Արևածաղիկ մանկապարտեզ:
Այսօր մեր նպատակն է կազմել դինամիկ ցուցակ՝ հիմնվելով այս տվյալների հավաքածուի չափանիշների վրա: Այսօր մենք կօգտագործենք և՛ մեկ, և՛ մի քանի չափանիշներ:
1. Օգտագործելով FILTER և OFFSET գործառույթները (Excel-ի նոր տարբերակների համար)
Առաջին հերթին մենք կօգտագործենք FILTER , OFFSET և COUNTA Excel-ի գործառույթները:
FILTER ֆունկցիանհասանելի է միայն Office 365 -ում: Այսպիսով, սա միայն նրանց համար է, ովքեր ունեն Office 365 բաժանորդագրություն:
Դեպք 1. Ելնելով մեկ չափանիշից
Եկեք փորձենք դինամիկ դարձնել այն ուսանողների ցանկը, որոնց միջին գնահատականները մեծ են կամ հավասար են 60 -ին:
Դուք կարող եք օգտագործել այս բանաձևը.
=FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,1),OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)
Ինչպես տեսնում եք, մենք ունենք բոլոր այն ուսանողների ցուցակը, ովքեր ստացել են 60 -ից ավելին:
Եվ ակնհայտ է, որ սա դինամիկ է ցուցակը։ Դուք փոխում եք տվյալների հավաքածուի ցանկացած արժեք կամ ավելացնում եք որևէ նոր արժեք տվյալների հավաքածուում:
Ցանկը կկարգավորվի ավտոմատ կերպով:
Բանաձևի բացատրություն.
-
COUNTA(C:C)
վերադարձնում է C սյունակի այն տողերի թիվը, որոնք դատարկ չեն: Այսպիսով,COUNTA(C:C)-1
վերադարձնում է այն տողերի քանակը, որոնք ունեն արժեքներ առանց Սյունակի վերնագրի ( Ուսանողի անունը այս օրինակում): - Եթե չունեք: ունեն Սյունակի վերնագիր , օգտագործեք
COUNTA(C:C)
-
OFFSET(C5,0,0,COUNTA(C:C)-1,1)
սկսվում է C5 բջիջից (առաջին ուսանողի անունը) և վերադարձնում է բոլոր ուսանողների անունների տիրույթը: - OFFSET ֆունկցիան COUNTIF ֆունկցիայի հետ համակցված օգտագործվել է բանաձևը դինամիկ պահելու համար: Եթե տվյալների հավաքածուին ավելացվի ևս մեկ ուսանող,
COUNTA(C:C)-1
բանաձևը կավելանա 1 -ով, իսկ OFFSET ֆունկցիան կներառի ուսանողին: - Նմանապես,
OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60
վերադարձնում է ՃԻՇՏ բոլոր այն նշանների համար, որոնք մեծ են կամ հավասար են 60 ։ - Վերջապես,
FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,1),OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)
վերադարձնում է բոլոր այն ուսանողների ցանկը, ովքեր ստացել են 60 -ից ավելի գնահատականներ։ - Եթե ցանկացած նոր ուսանող ավելացվում է տվյալների հավաքածուին,
COUNTA(C:C)-1
մեծանում է 1 -ով, և FILTER ֆունկցիան թարմացնում է հաշվարկը` ներառելով այն: - Այսպիսով, բանաձևը միշտ մնում է դինամիկ:
Նշում. առաջին OFFSET ֆունկցիան 1 -ից 2 ։
=FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,2),OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)
Դեպք 2. Հիմնվելով բազմաթիվ չափանիշների վրա
Եկեք այս անգամ փորձենք մի քանի չափանիշներ:
Մենք կփորձենք կազմել այն ուսանողների դինամիկ ցուցակը, ովքեր ստացել են 60-ից ավելի կամ հավասար գնահատականներ, բայց որոնց ID-ները փոքր կամ հավասար են 200 -ի:
Դուք կարող եք օգտագործել այս բանաձևը.
=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))
Ինչպես տեսնում եք, մենք ստացել ենք բոլոր այն ուսանողների ցուցակը, ովքեր ստացել են 60 -ից ավելի գնահատականներ և ունեն ID 200 -ից փոքր է:
Եվ կարիք չկա ասելու, սա դինամիկ ցուցակ է:
Եթե փոխեք որևէ արժեք կամ ավելացնեք որևէ նոր ուսանող տվյալների հավաքածուին, ցուցակն ինքնաբերաբար կկարգավորվի:
Բանաձևի բացատրություն.
- Այստեղ մենք բազմապատկել ենք չափանիշների երկու դինամիկ միջակայք,
(OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200)
- Եթե ունեք 2 -ից ավելի չափանիշներ, բազմապատկեք բոլոր միջակայքերը. չափանիշները նույն կերպ:
- Մնացածը նույնն է, ինչ նախորդ օրինակը (մեկ չափանիշների): OFFSET ֆունկցիան COUNTA ֆունկցիայի հետ համատեղ օգտագործվել է բանաձևը դինամիկ պահելու համար:
Նշում.
Եթե ցանկանում եք տեսնել ցանկի բոլոր սյունակները ( Սյունակներ B, C, և D այս օրինակում), փոխեք առաջին OFFSET-ի առաջին արգումենտը: ֆունկցիան առաջին սյունակում ( B5 այս օրինակում), և հինգերորդ արգումենտը սյունակների ընդհանուր քանակի համար ( 3 այս օրինակում):
=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))
Կարդալ ավելին. Excel Ստեղծել դինամիկ Ցուցակ աղյուսակից (3 հեշտ եղանակ)
2. Օգտագործելով INDEX-MATCH այլ գործառույթների հետ (հին տարբերակների համար)
Նրանք, ովքեր չունեն Office 365 բաժանորդագրությունը չի կարող օգտագործել վերը նշված բանաձևը:
Ես ցույց եմ տալիս ավելի բարդ ճանապարհ նրանց համար, ովքեր օգտագործում են Excel-ի հին տարբերակը՝ օգտագործելով INDEX-MATCH, Excel-ի OFFSET, SMALL, IF, ROW, COUNTIF, և COUNTIFS գործառույթները: Նշենք, որ այս բանաձևերը զանգվածային բանաձևեր են: Այսպիսով, Excel-ի ավելի հին տարբերակներում դրանք կիրառելու համար հարկավոր է սեղմել Ctrl+Shift+Enter պարզապես Enter-ի փոխարեն:
Դեպք 1. Հիմնվելով մեկ չափանիշի վրա
60-ից ավելի կամ հավասար ստացած ուսանողների դինամիկ ցուցակ ստեղծելու բանաձևը կլինի.
=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)
Ինչպես տեսնում եք, մենք կրկին ստացել ենք բոլոր այն ուսանողների անունները, ովքեր ստացել են 60-ից ավելի կամ հավասար: .
Այս անգամ մենք բարձրանում ենքթվերի հերթականությունը:
Եվ այո, ցանկը դինամիկ է: Տվյալների հավաքածուին ավելացրեք նոր աշակերտ կամ փոխեք տվյալների հավաքածուի ցանկացած ուսանողի նշանները:
Ցանկը ինքնաբերաբար կկարգավորվի:
Բացատրություն բանաձևը.
- Ահա C:C այն սյունակն է, որտեղից մենք ցանկանում ենք հանել ցանկի բովանդակությունը ( Ուսանողի անունը այս օրինակ). Դուք օգտագործում եք ձեր մեկը:
- D:D այն սյունակն է, որտեղ գտնվում է չափանիշը ( Միջին գնահատականները այս օրինակում): Դուք օգտագործում եք ձեր մեկը:
- C5 և D5 այն բջիջներն են, որտեղից սկսվել են իմ տվյալները ( Սյունակների վերնագրերի հենց ներքեւում ): Դուք օգտագործում եք ձեր մեկը:
- «>=60» իմ չափանիշն է (Այս օրինակում 60 -ից մեծ կամ հավասար է): Դուք օգտագործում եք ձեր մեկը:
- Բացի այս մի քանի փոփոխություններից, մնացած բանաձևը պահեք անփոփոխ և օգտագործեք այն ձեր տվյալների հավաքածուում: Դուք կստանաք դինամիկ ցուցակ՝ ըստ ձեր ցանկալի չափանիշի:
Դեպք 2. Բազմաթիվ չափանիշների հիման վրա
INDEX-MATCH Բազմաթիվ չափանիշների վրա հիմնված դինամիկ ցուցակի բանաձևը մի փոքր ավելի բարդ է: Այնուամենայնիվ, ես դա ցույց եմ տալիս:
Բանաձև՝ ստանալու այն ուսանողների անունները, ովքեր ստացել են 60 -ից մեծ կամ հավասար գնահատականներ, բայց ունեն ID ներ պակաս քան 200 կլինի;
=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)
Բանաձեւի բացատրությունը.
- Ահա C:C այն սյունակն է, որտեղից մենք ուզում ենք. դեպիհանեք ցանկի բովանդակությունը ( Ուսանողի անունը այս օրինակում): Դուք օգտագործում եք ձեր մեկը:
- B:B և D:D սյունակներն են, որտեղ գտնվում են չափանիշները ( Ուսանողի ID և Միջին գնահատականները այս օրինակում): Դուք օգտագործում եք ձեր մեկը:
- B5, C5, և D5 այն բջիջներն են, որտեղից սկսվել են իմ տվյալները ( Սյունակների վերնագրերի հենց տակը ). Դուք օգտագործում եք ձեր մեկը:
- Ես այստեղ բազմապատկել եմ երկու չափանիշ՝
(OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200)
.Եթե ունեք երկուից ավելի չափանիշներ, ապա համապատասխանաբար բազմապատկեք: - Ես կրկին օգտագործել եմ երկու չափանիշը: այս COUNTIFS ֆունկցիայի ներսում՝
COUNTIFS(B:B,"=60")
: Դուք համապատասխանաբար օգտագործում եք ձերը: - Բանաձևի մնացած մասը պահեք անփոփոխ և օգտագործեք այն ձեր տվյալների հավաքածուում: Դուք կստանաք դինամիկ ցուցակ բազմաթիվ չափանիշներով:
Կարդալ ավելին. Ինչպես կազմել դինամիկ տվյալների վավերացման ցուցակ՝ օգտագործելով VBA Excel-ում
3 . Ստեղծեք դինամիկ բացվող ցուցակ՝ հիմնվելով չափանիշների վրա՝ օգտագործելով տվյալների վավերացման գործիքը
Այժմ մենք ստեղծել ենք դինամիկ ցուցակը: Եթե ցանկանում եք, կարող եք ստեղծել դինամիկ բացվող ցուցակ ձեր աշխատաթերթի ցանկացած բջիջում:
- Դինամիկ բացվող ցուցակը ստեղծելու համար ընտրեք ձեր աշխատաթերթի ցանկացած բջիջ: և անցեք Տվյալներ > Տվյալների վավերացում > Տվյալների վավերացում Տվյալների գործիքներ բաժնում:
- Դուք կստանաք Տվյալների վավերացում երկխոսության տուփ: Թույլատրել տարբերակի տակ ընտրեք Ցուցակ : Եվ Աղբյուր տարբերակի տակ,մուտքագրեք առաջին բջիջի հղումը, որտեղ ցուցակը գտնվում է ձեր աշխատաթերթում, ինչպես նաև HashTag (#) ( $E$5# այս օրինակում):
- Այնուհետև սեղմեք OK : Դուք կստանաք բացվող ցուցակ ձեր ընտրած բջիջում այսպես:
Կարդալ ավելին. Ինչպես ստեղծել դինամիկ բացվող ցուցակ՝ օգտագործելով VBA Excel-ում
Ինչպես ստեղծել դինամիկ եզակի ցուցակ Excel-ում չափանիշների հիման վրա
Այս բաժնում մենք ցույց կտանք, թե ինչպես ստեղծել եզակի ցուցակ Excel-ում` հիմնվելով. չափանիշները։ Մենք կօգտագործենք UNIQUE և FILTER ֆունկցիաների համակցությունը: Մենք փոփոխեցինք տվյալների հավաքածուն և ավելացրինք յուրաքանչյուր ուսանողի սիրելի խաղերը: Հիմա ուզում եմ իմանալ չափանիշներով կրկնօրինակները հանող խաղերի անվանումը: Չափանիշներն են՝ ուսանողների միջին գնահատականները պետք է լինեն 60 -ից մեծ:
📌 Քայլեր.
- Դրեք բանաձևը, որը հիմնված է UNIQUE և FILTER ֆունկցիաների համակցության վրա Cell G5 :
=UNIQUE(FILTER(E5:E25,(D5:D25>60)))
Մենք ստանում ենք եզակի ցուցակ` հիմնված չափանիշների վրա:
Բացատրություն բանաձևը՝
- FILTER(E5:E25,(D5:D25>60)
Սա զտում է <3-ի արժեքները>Տարածք E5:E25 , պայմանով, որ միջին գնահատականները պետք է գերազանցեն 60 :
Արդյունքը՝ [Թենիս, վոլեյբոլ, ռեգբի, թենիս, ֆուտբոլ, ռեգբի, Ռեգբի, Ֆուտբոլ]
- ՅՈՒՐԱՔԱՆՉՅՈՒՐ (FILTER(E5:E25,(D5:D25>60)))
Սա վերադարձնում է բոլոր եզակիներըարժեքներ նախորդ արդյունքից:
Արդյունք. [Թենիս, վոլեյբոլ, ռեգբի, ֆուտբոլ]
Եզրակացություն
Օգտագործելով սրանք մեթոդներով, դուք կարող եք ստեղծել դինամիկ ցուցակ՝ հիմնված մեկ կամ մի քանի չափանիշների վրա Excel-ի ցանկացած տվյալների հավաքածուում: Խնդրում ենք նայեք մեր կայքը ExcelWIKI և տվեք ձեր առաջարկները մեկնաբանությունների դաշտում: