Satura rādītājs
Pirms kāda laika mēs sākām pētīt Excel datu validēšanas iespējas un uzzinājām, kā izveidot vienkāršu izlaižamo sarakstu programmā Excel, pamatojoties uz komatā atdalītu sarakstu, šūnu diapazonu vai nosauktu diapazonu.
Šodien mēs padziļināti izpētīsim šo funkciju un uzzināsim, kā izveidot kaskādes nolaižamos sarakstus, kuros tiek parādītas izvēles atkarībā no pirmajā nolaižamajā sarakstā izvēlētās vērtības. Citādi sakot, mēs izveidosim Excel datu validācijas sarakstu, pamatojoties uz cita saraksta vērtību.
Kā programmā Excel izveidot vairākus atkarīgus nolaižamos logus
Daudzlīmeņu atkarīgu nolaižamo sarakstu izveide programmā Excel ir vienkārša. Jums ir nepieciešami tikai daži nosaukti diapazoni un formula INDIRECT. Šī metode darbojas ar visām Excel 365 versijām - 2010 un senākām.
1. Ievadiet ierakstus nolaižamajos sarakstos
Vispirms ierakstiet ierakstus, kurus vēlaties parādīt nolaižamajos sarakstos, katru sarakstu atsevišķā slejā. Piemēram, es veidoju augļu eksportētāju kaskādes nolaižamo sarakstu, un avota lapas A slejā ( Augļi ) ietver pirmās izlaižamās izvēlnes vienumus, bet 3 pārējās slejās ir uzskaitīti atkarīgo izlaižamo izvēlņu elementi.
2. Izveidojiet nosauktus diapazonus
Tagad jums ir jārada nosaukumi galvenajam sarakstam un katram atkarīgajam sarakstam. To var izdarīt, pievienojot jaunu nosaukumu sadaļā Vārda pārvaldnieks logs ( Formulas cilne> Nosaukums Pārzinis> Jauns) vai ierakstot nosaukumu tieši Nosaukuma lodziņš .
Piezīme. Lūdzu, pievērsiet uzmanību tam, ka, ja jūsu pirmā rinda ir sava veida kolonnas virsraksts, kā redzams iepriekš redzamajā ekrānšāviņas attēlā, to nedrīkst iekļaut nosauktajā diapazonā.
Sīkāku soli-pa-solim detalizētu instrukciju skatiet sadaļā Kā definēt nosaukumu programmā Excel.
Kas jāatceras:
- Pirmajā nolaižamajā sarakstā redzamajiem elementiem jābūt vienvārdu ierakstiem, piemēram,. Aprikožu , Mango , Apelsīni . Ja ir elementi, kas sastāv no diviem, trim vai vairāk vārdiem, skatiet sadaļu Kā izveidot kaskādes izlaižamo logu ar vairāku vārdu ierakstiem.
- Atkarīgo sarakstu nosaukumiem jābūt tieši tādiem pašiem kā atbilstošajam ierakstam galvenajā sarakstā. Piemēram, atkarīgais saraksts, kas tiks parādīts, kad " Mango " ir izvēlēts no pirmā nolaižamā saraksta, ir jābūt nosaukumam Mango .
Kad tas ir izdarīts, varat nospiest Ctrl+F3, lai atvērtu Vārda pārvaldnieks logu un pārbaudiet, vai visos sarakstos ir pareizi nosaukumi un atsauces.
3. Izveidojiet pirmo (galveno) nolaižamo sarakstu.
- Tajā pašā vai citā izklājlapā atlasiet šūnas vai vairākas šūnas, kurās vēlaties, lai tiktu parādīts primārais nolaižamais saraksts.
- Dodieties uz Dati noklikšķiniet uz cilnes Datu validēšana un izveidojiet nolaižamo sarakstu, pamatojoties uz nosaukto diapazonu, parastajā veidā, izvēloties Saraksts zem Atļaut un ievadot diapazona nosaukumu Avots: kaste.
Sīkāku informāciju skatiet sadaļā Izlaižamā saraksta izveide, pamatojoties uz nosauktu diapazonu.
Rezultātā darblapā tiks izveidota nolaižamā izvēlne, kas būs līdzīga šai:
4. Izveidojiet atkarīgo nolaižamo sarakstu
Izvēlieties šūnu(-as) savai atkarīgajai nolaižamajai izvēlnei un atkal piemēro Excel datu validāciju, kā aprakstīts iepriekšējā solī. Taču šoreiz diapazona nosaukuma vietā ievadiet šādu formulu. Avots: lauka:
=INDIRECT(A2)
kur A2 ir šūna ar pirmo (primāro) nolaižamo sarakstu.
Ja šūna A2 pašlaik ir tukša, tiks parādīts kļūdas paziņojums " Source currently evaluates to an error. Vai vēlaties turpināt? "
Droši noklikšķiniet uz Jā , un, tiklīdz pirmajā nolaižamajā izvēlnē izvēlaties kādu elementu, otrajā, atkarīgajā, nolaižamajā sarakstā tiks parādīti tam atbilstošie ieraksti.
5. Pievienojiet trešo atkarīgo nolaižamo sarakstu (pēc izvēles)
Ja nepieciešams, varat pievienot trešo kaskādes nolaižamo sarakstu, kas atkarīgs no izvēles 2. nolaižamajā izvēlnē vai no izvēles pirmajos divos nolaižamajos sarakstos.
Iestatīt 3. nolaižamo logu, kas atkarīgs no 2. saraksta
Šāda tipa nolaižamo sarakstu varat izveidot tādā pašā veidā, kā mēs tikko izveidojām otro atkarīgo nolaižamo izvēlni. Tikai atcerieties 2 svarīgas iepriekš aplūkotās lietas, kas ir būtiskas, lai jūsu kaskādes nolaižamie saraksti darbotos pareizi.
Piemēram, ja vēlaties C slejā attēlot reģionu sarakstu atkarībā no tā, kura valsts ir izvēlēta B slejā, izveidojiet katras valsts reģionu sarakstu un nosauciet to pēc valsts nosaukuma, tieši tā, kā valsts parādās otrajā nolaižamajā sarakstā. Piemēram, Indijas reģionu sarakstam jābūt nosauktam "India", Ķīnas reģionu sarakstam - "China" un tā tālāk.
Pēc tam atlasiet šūnas 3. nolaižamajā izvēlnē (mūsu gadījumā C2) un piemērojiet Excel datu validāciju, izmantojot šādu formulu (B2 ir šūna ar otro nolaižamo izvēlni, kurā ir valstu saraksts):
=INDIRECT(B2)
Tagad katru reizi, kad atlasāt Indija zem valstu saraksta B slejā, trešajā nolaižamajā sarakstā būs šādas izvēles iespējas:
Piezīme. Parādītais reģionu saraksts ir unikāls katrai valstij, bet tas nav atkarīgs no izvēles pirmajā nolaižamajā sarakstā.
Izveidojiet trešo nolaižamo sarakstu, kas atkarīgs no pirmajiem diviem sarakstiem.
Ja nepieciešams izveidot kaskādes nolaižamo izvēlni, kas ir atkarīga gan no izvēles pirmajā, gan otrajā nolaižamajā sarakstā, rīkojieties šādi:
- Izveidojiet papildu nosaukto diapazonu kopas un nosauciet tās atbilstoši vārdu kombinācijām pirmajās divās nolaižamajās izvēlnēs. Mango, apelsīni u. c. sarakstā un Indija, Brazīlija u. c. 2. Pēc tam izveidojiet nosauktus diapazonus. MangoIndia , MangoBrazil , ApelsīniIndija , ApelsīniBrazīlija , u.c. Šajos nosaukumos nedrīkst būt zemsvītras vai citas papildu zīmes.
=INDIRECT(SUBSTITUTE(A2&B2," ",""))
kur A2 un B2 satur attiecīgi pirmo un otro nolaižamo logu.
Rezultātā jūsu 3. nolaižamajā sarakstā tiks parādīti reģioni, kas atbilst Augļi un Valsts atlasīti pirmajos 2 nolaižamajos sarakstos.
Šis ir visvienkāršākais veids, kā programmā Excel izveidot kaskādes nolaižamos logus. Tomēr šai metodei ir vairāki ierobežojumi.
Šīs pieejas ierobežojumi:
- Primārā nolaižamā saraksta elementiem jābūt vienvārdu ierakstiem. Skatiet, kā izveidot kaskādes nolaižamos sarakstus ar vairāku vārdu ierakstiem.
- Šī metode nedarbosies, ja galvenā izlaižamā saraksta ieraksti satur rakstzīmes, kas nav atļautas diapazonu nosaukumos, piemēram, defisi (-), ampersandu (&) u. c. Risinājums ir izveidot dinamisku kaskādes izlaižamo sarakstu, kurā nav šo ierobežojumu.
- Šādā veidā izveidotās nolaižamās izvēlnes netiek automātiski atjauninātas, t. i., jums būs jāmaina nosaukto diapazonu atsauces katru reizi, kad pievienosiet vai noņemsiet vienumus avota sarakstos. Lai pārvarētu šo ierobežojumu, mēģiniet izveidot dinamisku kaskādes nolaižamo sarakstu.
Izveidot kaskādes nolaižamos sarakstus ar vairāku vārdu ierakstiem
Formulas INDIRECT, ko izmantojām iepriekš minētajā piemērā, var apstrādāt tikai vienvārdu vienumus. Piemēram, formula =INDIRECT(A2) netieši atsaucas uz šūnu A2 un parāda nosaukto diapazonu tieši ar tādu pašu nosaukumu, kāds ir atsaucē minētajā šūnā. Tomēr Excel nosaukumos nav atļauts izmantot atstarpes, tāpēc šī formula nedarbosies ar vairāku vārdu nosaukumiem.
Risinājums ir izmantot funkciju INDIRECT kombinācijā ar SUBSTITUTE, kā mēs to darījām, izveidojot 3. izlaižamo logu.
Pieņemsim, ka jums ir Ūdens melones Šajā gadījumā jūs nosaucat arbūzas eksportētāju sarakstu ar vienu vārdu bez atstarpēm - Arbūzi .
Pēc tam otrajai nolaižamajai rūtiņai piemēro Excel datu validāciju, izmantojot šādu formulu, kas noņem atstarpes no nosaukuma šūnā A2:
=INDIRECT(SUBSTITUTE(A2," ",""))
Kā novērst izmaiņas primārajā nolaižamajā sarakstā
Iedomājieties šādu scenāriju. Jūsu lietotājs ir izdarījis izvēli visos nolaižamajos sarakstos, pēc tam viņš pārdomāja, atgriezās pirmajā sarakstā un izvēlējās citu elementu. Rezultātā 1. un 2. izvēle nesakrīt. Lai to novērstu, iespējams, vēlaties bloķēt jebkādas izmaiņas pirmajā nolaižamajā sarakstā, tiklīdz ir izdarīta izvēle otrajā sarakstā.
Lai to izdarītu, izveidojot pirmo nolaižamo izvēlni, izmantojiet īpašu formulu, kas pārbaudīs, vai otrajā nolaižamajā izvēlnē ir atlasīts kāds ieraksts:
=IF(B2="", Augļi, INDIRECT("FakeList"))
Kur B2 ir otrais nolaižamais logs " Augļi " ir saraksta nosaukums, kas parādās pirmajā nolaižamajā izvēlnē, un " FakeList " ir jebkurš neeksistējošs viltots vārds.
Tagad, ja 2. nolaižamajā sarakstā ir atlasīts kāds no elementiem, ja lietotājs noklikšķina uz bultiņas blakus pirmajam sarakstam, izvēles iespējas nebūs pieejamas.
Dinamisku kaskādes nolaižamo sarakstu izveide programmā Excel
Galvenā no Excel atkarīgā dinamiskā nolaižamā saraksta priekšrocība ir tā, ka varat brīvi rediģēt avotu sarakstus un jūsu nolaižamās izvēlnes tiks atjauninātas nepārtraukti. Protams, dinamisko nolaižamo sarakstu izveide prasa nedaudz vairāk laika un sarežģītākas formulas, taču, manuprāt, tas ir ieguldījuma vērts ieguldījums, jo, kad šādas nolaižamās izvēlnes ir izveidotas, ar tām ir īsts prieks strādāt.
Tāpat kā gandrīz ar jebko Excel programmā, vienu un to pašu rezultātu var panākt vairākos veidos. Jo īpaši varat izveidot dinamisku izlaižamo logu, izmantojot OFFSET, INDIRECT un COUNTA funkciju kombināciju vai elastīgāku INDEX MATCH formulu. Pēdējais veids ir man vēlamais, jo tas nodrošina daudzas priekšrocības, no kurām būtiskākās ir šādas:
- Jums ir jāizveido tikai 3 nosaukti diapazoni neatkarīgi no tā, cik vienību ir galvenajā un atkarīgajā sarakstā.
- Jūsu sarakstos var būt vairāku vārdu elementi un īpašas rakstzīmes.
- Ierakstu skaits katrā slejā var atšķirties.
- Ierakstu šķirošanas secībai nav nozīmes.
- Visbeidzot, ir ļoti viegli uzturēt un mainīt avotu sarakstus.
Labi, pietiek teorijas, ķersimies pie prakses.
1. Sakārtot avota datus tabulā
Kā parasti, pirmais, kas jums jādara, ir jāuzraksta visas nolaižamo sarakstu izvēles darblapā. Šoreiz avota dati būs jāuzglabā Excel tabulā. Lai to izdarītu, pēc datu ievadīšanas atlasiet visus ierakstus un nospiediet taustiņus Ctrl + T vai noklikšķiniet uz . Ievietot cilne> Tabula . Pēc tam ierakstiet tabulas nosaukumu laukā Tabulas nosaukums kaste.
Visērtākā un vizuālākā pieeja ir saglabāt pirmās izlaižamās izvēlnes vienumus kā tabulas virsrakstus, bet atkarīgās izlaižamās izvēlnes vienumus kā tabulas datus. Ekrānšā attēlā ir parādīta manas tabulas struktūra ar nosaukumu eksportētāji_tbl - augļu nosaukumi ir tabulas virsraksti, un zem attiecīgā augļa nosaukuma ir pievienots eksportētājvalstu saraksts.
2. Izveidojiet Excel nosaukumus
Tagad, kad avota dati ir sagatavoti, ir laiks iestatīt nosauktās atsauces, kas dinamiski iegūst pareizo sarakstu no tabulas.
2.1. Pievienot nosaukumu tabulas galvenajai rindai (galvenais nolaižamais logs)
Lai izveidotu jaunu nosaukumu, kas atsaucas uz tabulas galveni, atlasiet to un pēc tam noklikšķiniet uz Formulas > Vārda pārvaldnieks > Jauns vai nospiediet Ctrl + F3 .
Microsoft Excel izmantos iebūvēto tabulu atsauču sistēmu, lai izveidotu nosaukumu tabula_nosaukums[#Headers] modelis.
Dodiet tam kādu jēgpilnu un viegli iegaumējamu nosaukumu, piemēram,. fruit_list un noklikšķiniet uz LABI .
2.2. Izveidojiet nosaukumu šūnai, kurā atrodas pirmais nolaižamais saraksts.
Es zinu, ka jums vēl nav nevienas nolaižamās rūtiņas :) Bet jums ir jāizvēlas šūna, kurā tiks izvietota pirmā nolaižamā rūtiņa, un tagad jāizveido šīs šūnas nosaukums, jo šis nosaukums būs jāiekļauj trešā nosaukuma atsaucē.
Piemēram, mans pirmais nolaižamais lodziņš atrodas 2. lapas B1 šūnā, tāpēc izveidoju tam nosaukumu, kaut ko vienkāršu un saprotamu, piemēram. augļi :
Padoms. Izmantojiet atbilstošas šūnu atsauces, lai nolaižamo sarakstu kopēšana pāri darba lapai.
Lūdzu, uzmanīgi izlasiet turpmākos dažus punktus, jo šis ir ļoti noderīgs padoms, kuru nevēlaties palaist garām. Liels paldies Karen par tā publicēšanu!
Ja plānojat nolaižamos sarakstus kopēt uz citām šūnām, tad, veidojot nosaukumu šūnai(-ām) ar pirmo nolaižamo sarakstu, izmantojiet jauktas šūnu atsauces.
Lai nolaižamās izvēlnes pareizi kopētu uz citiem kolonnas (t. i., pa labi), izmantojiet relatīvās kolonnas (bez zīmes $) un absolūtās rindas (ar $) atsauces, piemēram, = Sheet2!B$1.
Rezultātā B1 atkarīgais nolaižamais saraksts parādīsies šūnā B2; C1 atkarīgais nolaižamais saraksts parādīsies C2 un tā tālāk.
Un, ja plānojat nokopēt nolaižamos logus uz citiem rindas (t. i., lejup pa kolonnu), tad izmantojiet absolūtās kolonnas (ar $) un relatīvās rindas (bez $) koordinātas, piemēram, = Sheet2!$B1.
Lai nolaižamo šūnu kopētu jebkurā virzienā, izmantojiet relatīvo atsauci (bez zīmes $), piemēram, = Sheet2!B1.
2.3. Izveidojiet nosaukumu, lai iegūtu atkarīgās izvēlnes ierakstus
Tā vietā, lai katram atkarīgajam sarakstam izveidotu unikālu nosaukumu, kā tas bija iepriekšējā piemērā, mēs izveidosim vienu sarakstu. nosauktā formula Tā iegūs pareizo ierakstu sarakstu otrajam nolaižamajam sarakstam atkarībā no tā, kāda izvēle ir izdarīta pirmajā nolaižamajā sarakstā. Galvenā šīs formulas izmantošanas priekšrocība ir tā, ka jums nebūs jārada jauni nosaukumi, kad pievienosiet jaunus ierakstus pirmajam nolaižamajam sarakstam - viena nosaukuma formula attiecas uz visiem ierakstiem.
Ar šo formulu izveidojat jaunu Excel nosaukumu:
=INDEX(exports_tbl,,MATCH(fruit,fruit_list,0))
Kur:
exports_tbl
- tabulas nosaukums (izveidots 1. solī);augļi
- tās šūnas nosaukums, kurā atrodas pirmais nolaižamais saraksts (izveidots 2.2. solī);fruit_list
- nosaukums, kas norāda uz tabulas galvenes rindu (izveidots 2.1. solī).
Es tam devu nosaukumu eksportētāji_list , kā redzams zemāk redzamajā ekrāna attēlā.
Nu, lielāko darba daļu jau esat paveikuši! Pirms ķerties pie pēdējā soļa, būtu labi atvērt nosaukumu pārvaldnieku ( Ctrl + F3 ) un pārbaudīt nosaukumus un atsauces:
3. Iestatiet Excel datu validāciju
Patiesībā šī ir visvieglākā daļa. Kad abas formulas ir izveidotas, iestatiet datu validāciju parastajā veidā ( Dati cilne> Datu validēšana ).
- Pirmajā nolaižamajā sarakstā lodziņā Avots ievadiet =fruit_list (nosaukums, kas izveidots 2.1. solī).
- Atkarīgajā nolaižamajā sarakstā ievadiet =exporters_list (nosaukums, kas izveidots 2.3. solī).
Jūsu dinamiskā kaskādes nolaižamā izvēlne ir pabeigta, un tā automātiski atjaunināsies, atspoguļojot izmaiņas, ko esat veicis avota tabulā.
Šim dinamiskajam Excel izlaižamajam logam, kas visos citos aspektos ir perfekts, ir viens trūkums - ja avota tabulas kolonnās ir atšķirīgs elementu skaits, izvēlnē parādīsies šādas tukšas rindas:
Tukšu rindu izslēgšana no dinamiskās kaskādes nolaižamajā logā
Ja nolaižamajos sarakstos vēlaties notīrīt visas tukšās rindas, ir nepieciešams spert vēl vienu soli un uzlabot INDEX / MATCH formulu, kas tiek izmantota atkarīgā dinamiskā nolaižamā saraksta izveidei.
Ideja ir izmantot 2 INDEX funkcijas, kur pirmā iegūst augšējo kreiso šūnu, bet otrā atgriež diapazona apakšējo labo šūnu, vai OFFSET funkciju ar ligzdotu INDEX un COUNTA. Sīkāki soļi ir aprakstīti tālāk:
1. Izveidojiet divus papildu nosaukumus
Lai formula nebūtu pārāk apjomīga, vispirms izveidojiet pāris palīgnosaukumus ar šādām vienkāršām formulām:
- Vārds ar nosaukumu col_num lai atsauktos uz izvēlētās kolonnas numuru:
=MATCH(fruit,fruit_list,0)
- Vārds ar nosaukumu whole_col lai atsauktos uz atlasīto kolonnu (nevis kolonnas numuru, bet visu kolonnu):
=INDEX(exports_tbl,,col_num)
Iepriekš minētajās formulās, exports_tbl
ir avota tabulas nosaukums, augļi
ir tās šūnas nosaukums, kurā atrodas pirmā nolaižamā rūtiņa, un fruit_list
ir nosaukums, kas norāda uz tabulas galvenes rindu.
2. Izveidojiet nosaukto atsauci uz atkarīgo izlaižamo logu
Pēc tam izmantojiet kādu no turpmāk minētajām formulām, lai izveidotu jaunu nosaukumu (nosauksim to par eksportētāji_list2 ), kas jāizmanto kopā ar atkarīgo nolaižamo sarakstu:
=INDEX(exporters_tbl,1,col_num) : INDEX(exporters_tbl, COUNTA(whole_col), col_num)
=OFFSET(INDEX(exports_tbl,1,col_num),0,0,0,COUNTA(whole_col))
3. Piemērot datu validāciju
Visbeidzot, atlasiet šūnu, kurā atrodas atkarīgais nolaižamais logs, un piemēroiet datu validāciju, ievadot = eksportētāji_list2 (iepriekšējā solī izveidotais nosaukums), kas atrodas kontā Avots: kaste.
Zemāk redzamajā ekrānšāviņas attēlā redzama dinamiskā nolaižamā izvēlne programmā Excel, kurā vairs nav tukšo rindu!
Piezīme. Strādājot ar dinamiskiem kaskādes izlaižamajiem sarakstiem, kas izveidoti, izmantojot iepriekš minētās formulas, nekas neliedz lietotājam mainīt vērtību pirmajā izlaižamajā sarakstā pēc izvēles izdarīšanas otrajā izvēlnē, kā rezultātā izvēles iespējas primārajā un sekundārajā izlaižamajā sarakstā var nesakrist. Var bloķēt izmaiņas pirmajā lodziņā pēc izvēles izdarīšanas otrajā lodziņā, izmantojot VBA vai.šajā pamācībā ieteiktās sarežģītās formulas.
Šādā veidā jūs izveidojat Excel datu apstiprināšanas sarakstu, pamatojoties uz cita saraksta vērtībām. Lūdzu, nekautrējieties lejupielādēt mūsu darbgrāmatu paraugus, lai redzētu kaskādes nolaižamos sarakstus darbībā. Paldies, ka izlasījāt!
Prakses darba burtnīca lejupielādei
Kaskādes nolaižamais paraugs 1 - vienkārša versija
Kaskādes nolaižamais paraugs 2 - uzlabota versija bez tukšajiem laukumiem