Paano Gumawa ng Dynamic na Listahan sa Excel Batay sa Pamantayan (3 Mga Paraan)

  • Ibahagi Ito
Hugh West

Ngayon ay ipapakita ko kung paano gumawa ng dynamic na listahan batay sa isa o maramihang pamantayan sa Excel.

I-download ang Practice Workbook

Dynamic na Listahan Batay sa Criteria.xlsx

Ano ang Dynamic na Listahan sa Excel?

Ang isang dynamic na listahan ay isang listahan na ginawa mula sa isang set ng data at awtomatikong nag-a-update kapag binago ang anumang halaga sa orihinal na set ng data, o idinagdag ang mga bagong halaga sa orihinal na set ng data.

Sa ibinigay na larawan, mayroon kaming listahan ng mga pangalan ng lahat ng mag-aaral na nakakuha ng mga markang higit sa 60 sa pagsusulit.

Ngayon kung babaguhin mo ang mga marka ni Jennifer Marlo mula 68 patungong 58 , at magdagdag ng bagong mag-aaral na tinatawag na Ross Smith na may mga markang 81 sa talahanayan, ang listahan ay awtomatikong ayusin ang sarili nito.

Tinatawag itong dynamic na listahan.

3 Paraan para Gumawa ng Dynamic na Listahan sa Excel Batay sa Pamantayan

Narito, mayroon kaming set ng data na may Mga Student ID, Mga Pangalan, at Mga Marka ng ilang estudyante sa isang Paaralan na tinatawag na Sunflower kindergarten.

Ang aming layunin ngayon ay gumawa ng isang dynamic na listahan batay sa pamantayan mula sa set ng data na ito. Gagamitin namin ang isa at maramihang pamantayan ngayon.

1. Gamit ang FILTER at OFFSET Function (Para sa Mga Bagong Bersyon ng Excel)

Una sa lahat, gagamit kami ng kumbinasyon ng FILTER , OFFSET , at COUNTA function ng Excel.

Ang FILTER functionay available sa Office 365 lamang. Kaya ito ay para lamang sa mga may Office 365 na subscription.

Kaso 1: Batay sa Single Criteria

Subukan nating gumawa ng dynamic listahan ng mga mag-aaral na ang mga average na marka ay mas malaki sa o katumbas ng 60 .

Maaari mong gamitin ang formula na ito:

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

Tulad ng nakikita mo, mayroon kaming listahan ng lahat ng mga mag-aaral na nakakuha ng higit sa 60 .

At malinaw naman, ito ay isang dinamiko listahan. Papalitan mo ang anumang halaga sa set ng data o magdagdag ng anumang bagong halaga sa set ng data.

Awtomatikong magsasaayos ang listahan.

Paliwanag ng Formula:

  • COUNTA(C:C) ibinabalik ang bilang ng mga row sa column C na hindi blangko. Kaya ibinabalik ng COUNTA(C:C)-1 ang bilang ng mga row na may mga value na walang Column Header ( Pangalan ng Mag-aaral sa halimbawang ito).
  • Kung hindi mo ' mayroon akong Column Header , gamitin ang COUNTA(C:C)
  • OFFSET(C5,0,0,COUNTA(C:C)-1,1) nagsisimula sa cell C5 (Pangalan ng unang mag-aaral) at ibinabalik ang isang hanay ng mga pangalan ng lahat ng mga mag-aaral.
  • Ang OFFSET function na kasama ng COUNTIF function ay ginamit upang panatilihing dynamic ang formula. Kung isa pang mag-aaral ang idadagdag sa set ng data, ang COUNTA(C:C)-1 formula ay tataas ng 1 at ang OFFSET function ay isasama ang mag-aaral.
  • Katulad nito, ang OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60 ay nagbabalik ng TRUE para sa lahat ng markang mas malaki sa o katumbas ng 60 .
  • Sa wakas, ang FILTER(OFFSET(C5,0,0,COUNTA(C:C)-1,1),OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60) ay nagbabalik ng listahan ng lahat ng mga mag-aaral na nakakuha ng mga markang higit sa 60 .
  • Kung anumang bagong mag-aaral ay idaragdag sa set ng data, COUNTA(C:C)-1 tataas ng 1 , at nire-refresh ng FILTER function ang pagkalkula kasama ito.
  • Kaya palaging nananatiling dynamic ang formula.

Tandaan:

Kung gusto mong makuha ang mga marka kasama ng mga pangalan sa listahan, baguhin lang ang ikalimang argumento ng ang unang function na OFFSET mula 1 hanggang 2 .

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

Kaso 2: Batay sa Maramihang Pamantayan

Subukan natin ang maraming pamantayan sa pagkakataong ito.

Susubukan naming gumawa ng dynamic na listahan ng mga mag-aaral na nakakuha ng mga markang higit sa o katumbas ng 60, ngunit ang mga ID ay mas mababa sa o katumbas ng 200 .

Maaari mong gamitin ang formula na ito:

=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))

Tulad ng nakikita mo, mayroon kaming listahan ng lahat ng mga mag-aaral na nakakuha ng mga markang higit sa 60 at may ID s mas mababa sa 200 .

At hindi na kailangang sabihin, ito ay isang dynamic na listahan.

Kung babaguhin mo ang anumang halaga o magdagdag ng sinumang bagong mag-aaral sa set ng data, awtomatikong magsasaayos ang listahan.

Paliwanag ng Formula:

  • Dito pinarami namin ang dalawang dynamic na hanay ng pamantayan, (OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200)
  • Kung mayroon kang higit sa 2 na pamantayan, i-multiply ang lahat ng hanay ng pamantayan sa parehong paraan.
  • Ang natitira ay pareho sa nakaraang halimbawa (ng iisang pamantayan).Ang function na OFFSET kasama ng function na COUNTA ay ginamit upang panatilihing dynamic ang formula.

Tandaan:

Kung gusto mong makita ang lahat ng column sa listahan ( Mga Column B, C, at D sa halimbawang ito), baguhin ang unang argument ng unang OFFSET function sa unang column ( B5 sa halimbawang ito), at ang ikalimang argumento sa kabuuang bilang ng mga column ( 3 sa halimbawang ito).

=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))

Magbasa Nang Higit Pa: Excel Create Dynamic Listahan mula sa Talahanayan (3 Madaling Paraan)

2. Paggamit ng INDEX-MATCH sa Iba Pang Mga Function (Para sa Mga Lumang Bersyon)

Yaong mga walang Hindi magagamit ng subscription ng Office 365 ang formula sa itaas.

Nagpapakita ako ng mas kumplikadong paraan para sa mga gumagamit ng mas lumang bersyon ng Excel, gamit ang INDEX-MATCH, OFFSET, SMALL, IF, ROW, COUNTIF, at COUNTIFS function ng Excel. Tandaan na ang mga formula na ito ay mga array formula. Kaya, para ilapat ang mga ito sa mga mas lumang bersyon ng Excel, kailangan mong pindutin ang Ctrl+Shift+Enter sa halip na Enter lang.

Case 1: Batay sa Single Criteria

Ang formula para gumawa ng dynamic na listahan ng mga mag-aaral na nakakuha ng higit sa o katumbas ng 60 ay:

=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)

Tulad ng nakikita mo, muli naming nakuha ang mga pangalan ng lahat ng mga mag-aaral na nakakuha ng higit sa o katumbas ng 60 .

Sa pagkakataong ito, umakyat na tayopagkakasunud-sunod ng mga numero.

At oo, dynamic ang listahan. Magdagdag ng bagong mag-aaral sa set ng data, o baguhin ang mga marka ng sinumang mag-aaral sa dataset.

Awtomatikong ia-adjust ng listahan ang sarili nito.

Paliwanag ng ang Formula:

  • Narito C:C ang column kung saan gusto naming kunin ang mga nilalaman ng listahan ( Pangalan ng Mag-aaral dito halimbawa). Gamitin mo ang iyong isa.
  • D:D ang column kung saan matatagpuan ang criterion ( Average na Marka sa halimbawang ito). Ginagamit mo ang iyong isa.
  • C5 at D5 ay ang mga cell kung saan nagsimula ang aking data (sa ibaba lamang ng Mga Header ng Column ). Gamitin mo ang iyong isa.
  • “>=60” ang aking pamantayan (Mas malaki sa o katumbas ng 60 sa halimbawang ito). Ginagamit mo ang iyong isa.
  • Bukod sa ilang pagbabagong ito, panatilihing hindi nagbabago ang natitirang bahagi ng formula at gamitin ito sa iyong set ng data. Makakakuha ka ng dynamic na listahan ayon sa gusto mong criterion.

Kaso 2: Batay sa Maramihang Pamantayan

Ang INDEX-MATCH medyo mas kumplikado ang formula para sa dynamic na listahan batay sa maraming pamantayan. Gayunpaman, ipinapakita ko ito.

Ang formula para makuha ang mga pangalan ng mga mag-aaral na nakakuha ng mga markang mas malaki kaysa sa o katumbas ng 60 , ngunit may ID s mas mababa sa Ang 200 ay magiging;

=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)

Paliwanag ng Formula:

  • Narito ang C:C ang column kung saan gusto namin sai-extract ang mga nilalaman ng listahan ( Pangalan ng Mag-aaral sa halimbawang ito). Ginagamit mo ang iyong isa.
  • B:B at D:D ang mga column kung saan matatagpuan ang pamantayan ( Student ID at Mga Average na Marka sa halimbawang ito). Gamitin mo ang iyong isa.
  • B5, C5, at D5 ay ang mga cell kung saan nagsimula ang aking data (sa ibaba lamang ng Mga Header ng Column ). Gamitin mo ang iyong isa.
  • Nag-multiply ako ng dalawang pamantayan dito: (OFFSET(D5,0,0,COUNTA(D:D)-1,1)>=60)*(OFFSET(B5,0,0,COUNTA(B:B)-1,1)<=200) . Kung mayroon kang higit sa dalawang pamantayan, i-multiply nang naaayon.
  • Ginamit ko muli ang dalawang pamantayan sa loob nitong COUNTIFS function: COUNTIFS(B:B,"=60") . Gamitin mo ang iyong mga formula nang naaayon.
  • Panatilihing hindi nagbabago ang natitirang formula at gamitin ito sa iyong set ng data. Makakakuha ka ng dynamic na listahan na may maraming pamantayan.

Magbasa Nang Higit Pa: Paano Gumawa ng Listahan ng Pagpapatunay ng Dynamic na Data Gamit ang VBA sa Excel

3 . Gumawa ng Dynamic na Drop Down List Batay sa Pamantayan Gamit ang Data Validation Tool

Ngayon nagawa na namin ang dynamic na listahan. Kung gusto mo, maaari kang lumikha ng dynamic na drop-down list sa anumang cell ng iyong worksheet.

  • Upang gawin ang dynamic na drop-down list, pumili ng anumang cell sa iyong worksheet at pumunta sa Data > Pagpapatunay ng Data > Pagpapatunay ng Data sa ilalim ng seksyong Mga Tool ng Data .

  • Makukuha mo ang Pagpapatunay ng Data kahon ng diyalogo. Sa ilalim ng Opsyon na Payagan , piliin ang Listahan . At sa ilalim ng opsyong Pinagmulan ,ilagay ang reference ng unang cell kung saan ang listahan ay nasa iyong worksheet kasama ang isang HashTag (#) ( $E$5# sa halimbawang ito).

  • Pagkatapos ay i-click ang OK . Makakakuha ka ng drop-down na listahan sa iyong napiling cell tulad nito.

Magbasa Nang Higit Pa: Paano Gumawa ng Dynamic na Drop Down List Gamit ang VBA sa Excel

Paano Gumawa ng Dynamic na Natatanging Listahan sa Excel Batay sa Pamantayan

Sa seksyong ito, ipapakita namin kung paano gumawa ng natatanging listahan sa Excel batay sa pamantayan. Gagamit kami ng kumbinasyon ng UNIQUE at FILTER function. Binago namin ang dataset at idinagdag namin ang mga paboritong laro ng bawat mag-aaral. Ngayon, gusto mong malaman ang pangalan ng mga laro na nag-aalis ng mga duplicate na may pamantayan. Ang pamantayan ay ang mga average na marka ng mga mag-aaral ay dapat na mas mataas sa 60 .

📌 Mga Hakbang:

  • Ilagay ang formula batay sa kumbinasyon ng UNIQUE at FILTER function sa Cell G5 .
=UNIQUE(FILTER(E5:E25,(D5:D25>60)))

Nakakuha kami ng natatanging listahan batay sa pamantayan.

Paliwanag ng ang Formula:

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

Pina-filter nito ang mga value ng Range E5:E25 , na may kundisyon na ang mga average na marka ay dapat na mas mataas sa 60 .

Resulta: [Tennis, Volleyball, Rugby, Tennis, Football, Rugby, Rugby, Football]

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

Ito ay bumabalik lahat ng kakaibamga value mula sa nakaraang resulta.

Resulta: [Tennis, Volleyball, Rugby, Football]

Konklusyon

Paggamit ng mga ito pamamaraan, maaari kang lumikha ng isang dynamic na listahan batay sa isa o maramihang pamantayan sa anumang set ng data sa Excel. Mangyaring tingnan ang aming website ExcelWIKI at ibigay ang iyong mga mungkahi sa kahon ng komento.

Si Hugh West ay isang napakaraming Excel trainer at analyst na may higit sa 10 taong karanasan sa industriya. May hawak siyang Bachelor's degree sa Accounting and Finance at Master's degree sa Business Administration. Si Hugh ay may hilig sa pagtuturo at nakabuo ng kakaibang diskarte sa pagtuturo na madaling sundin at maunawaan. Ang kanyang dalubhasang kaalaman sa Excel ay nakatulong sa libu-libong mag-aaral at propesyonal sa buong mundo na mapabuti ang kanilang mga kasanayan at maging mahusay sa kanilang mga karera. Sa pamamagitan ng kanyang blog, ibinahagi ni Hugh ang kanyang kaalaman sa mundo, nag-aalok ng mga libreng Excel tutorial at online na pagsasanay upang matulungan ang mga indibidwal at negosyo na maabot ang kanilang buong potensyal.