Sadržaj
Prije nekog vremena počeli smo istraživati mogućnosti Excelove provjere valjanosti podataka i naučili kako stvoriti jednostavan padajući popis u Excelu na temelju popisa odvojenih zarezima, raspona ćelija ili imenovanog raspona.
Danas ćemo detaljno istražiti ovu značajku i naučiti kako stvoriti kaskadne padajuće popise koji prikazuju izbore ovisno o vrijednosti odabranoj u prvom padajućem izborniku. Drugim riječima, napravit ćemo Excelov popis za provjeru valjanosti podataka na temelju vrijednosti drugog popisa.
Kako stvoriti višestruko zavisne padajuće izbornike u Excelu
Izrada multi Padajući popisi ovisni o razini u Excelu su jednostavni. Sve što trebate je nekoliko imenovanih raspona i INDIRECT formula. Ova metoda radi sa svim verzijama programa Excel 365 - 2010 i ranijim.
1. Upišite unose za padajuće popise
Prvo upišite unose za koje želite da se pojave na padajućim popisima, svaki popis u zasebnom stupcu. Na primjer, stvaram kaskadni padajući popis izvoznika voća i stupac A moje izvorne tablice ( Voće ) uključuje stavke prvog padajućeg izbornika, a 3 druga stupca navode stavke za zavisne padajuće izbornike.
2. Stvorite imenovane raspone
Sada morate stvoriti nazive za svoj glavni popis i za svaki od zavisnih popisa. To možete učiniti ili dodavanjem novog imena u prozor Upravitelj naziva (kartica Formule > Upravitelj imena > Novo) ili upisivanjemznak) i apsolutne reference retka (s $) poput = Sheet2!B$1.
Kao rezultat, B1 ovisan padajući popis pojavit će se u ćeliji B2; Padajući izbornik ovisan o C1 prikazat će se u C2, i tako dalje.
I ako planirate kopirati padajuće izbornike u druge redove (tj. dolje stupac), zatim koristite apsolutne koordinate stupca (s $) i relativne koordinate retka (bez $) kao što je = Sheet2!$B1.
Da biste kopirali padajuću ćeliju u bilo koju smjeru, koristite relativnu referencu (bez znaka $) kao = Sheet2!B1.
2.3. Stvorite naziv za dohvaćanje unosa ovisnog izbornika
Umjesto postavljanja jedinstvenih naziva za svaki od zavisnih popisa kao što smo učinili u prethodnom primjeru, stvorit ćemo jednu formulu s nazivom koja nije dodijeljen nijednoj određenoj ćeliji ili nizu ćelija. Dohvatit će točan popis unosa za drugi padajući izbornik ovisno o tome koji je odabir napravljen na prvom padajućem popisu. Glavna prednost korištenja ove formule je ta što nećete morati stvarati nove nazive dok dodajete nove unose na prvi padajući popis - jedna imenovana formula pokriva ih sve.
Stvorite novi Excel naziv ovom formulom:
=INDEX(exporters_tbl,,MATCH(fruit,fruit_list,0))
Gdje:
-
exporters_tbl
- naziv tablice (stvorene u koraku 1); -
fruit
- naziv ćelije koja sadrži prvi padajući popis (stvoren u koraku 2.2); -
fruit_list
- naziv koji upućuje na red zaglavlja tablice (stvoren ukorak 2.1).
Dao sam mu naziv exporters_list , kao što vidite na slici ispod.
Pa , već ste obavili veći dio posla! Prije nego što prijeđete na posljednji korak, možda bi bilo dobro otvoriti Upravitelj naziva (Ctrl + F3) i provjeriti imena i reference:
3. Postavite provjeru valjanosti podataka programa Excel
Ovo je zapravo najlakši dio. S dvije navedene formule postavljate provjeru valjanosti podataka na uobičajeni način (kartica Podaci > Provjera valjanosti podataka ).
- Za prvi padajućeg popisa, u okvir Izvor unesite =fruit_list (naziv stvoren u koraku 2.1).
- Za zavisni padajući popis unesite =exporters_list (ime stvoreno u koraku 2.3).
Gotovo! Vaš dinamički kaskadni padajući izbornik je završen i automatski će se ažurirati odražavajući promjene koje ste napravili na izvornoj tablici.
Ovaj dinamički Excel padajući izbornik, savršen u svim drugim aspektima , ima jedan nedostatak - ako stupci vaše izvorne tablice sadrže različit broj stavki, prazni retci pojavit će se u vašem izborniku ovako:
Isključi prazne retke iz dinamički kaskadni padajući izbornik
Ako želite očistiti sve prazne retke u svojim padajućim okvirima, morat ćete učiniti korak dalje i poboljšati formulu INDEX / MATCH koja se koristi za stvaranje ovisnog dinamičkog padajućeg popisa.
Ideja je koristiti2 funkcije INDEX, gdje prva dobiva gornju lijevu ćeliju, a druga vraća donju desnu ćeliju raspona, ili funkciju OFFSET s ugniježđenim INDEX i COUNTA. Detaljni koraci slijede u nastavku:
1. Stvorite dva dodatna imena
Da formula ne bude preglomazna, prvo stvorite nekoliko pomoćnih imena sa sljedećim jednostavnim formulama:
- Ime pod nazivom col_num za referencu na broj odabranog stupca:
=MATCH(fruit,fruit_list,0)
- Ime pod nazivom entire_col za referencu na odabrani stupac (ne broj stupca, već cijeli stupac):
=INDEX(exporters_tbl,,col_num)
U gornjim formulama, exporters_tbl
je naziv vaše izvorne tablice, fruit
je naziv ćelije koja sadrži prvi padajući izbornik, a fruit_list
je naziv koji upućuje na red zaglavlja tablice.
2. Stvorite imenovanu referencu za zavisni padajući izbornik
Zatim upotrijebite bilo koju od niže navedenih formula za stvaranje novog naziva (nazovimo ga exporters_list2 ) koji će se koristiti s zavisnim padajućim popisom:
=INDEX(exporters_tbl,1,col_num) : INDEX(exporters_tbl, COUNTA(entire_col), col_num)
=OFFSET(INDEX(exporters_tbl,1,col_num),0,0,COUNTA(entire_col))
3. Primijeni provjeru valjanosti podataka
Na kraju odaberite ćeliju koja sadrži zavisni padajući izbornik i primijenite provjeru valjanosti podataka unosom = exporters_list2 (ime stvoreno u prethodnom koraku) u Izvor okvir.
Snimak zaslona u nastavku prikazuje rezultirajući dinamički padajući izbornik u Excelu gdje su svi prazni redovi nestali!
Napomena. Kada radite s dinamičkim kaskadnim padajućim popisimastvoren pomoću gornjih formula, ništa ne sprječava korisnika da promijeni vrijednost u prvom padajućem izborniku nakon odabira u drugom izborniku, kao rezultat toga, izbori u primarnom i sekundarnom padajućem izborniku mogu se ne podudarati. Možete blokirati promjene u prvom okviru nakon odabira u drugom pomoću VBA ili složenih formula predloženih u ovom vodiču.
Ovako stvarate popis za provjeru valjanosti podataka programa Excel na temelju vrijednosti drugog popisa. Slobodno preuzmite naše ogledne radne knjige da biste vidjeli kaskadne padajuće popise na djelu. Hvala vam na čitanju!
Vježbe za preuzimanje
Kaskadni padajući uzorak 1 - laka verzija
Kaskadni padajući uzorak 2 - napredna verzija bez praznina
ime izravno u okviru za ime.
Napomena. Obratite pozornost da ako je vaš prvi redak vrsta zaglavlja stupca kao što vidite na gornjoj snimci zaslona, ne smijete ga uključiti u imenovani raspon.
Za detaljne upute korak po korak pogledajte Kako definirati ime u Excelu.
Stvari koje treba zapamtiti:
- Stavke koje treba na prvom padajućem popisu moraju biti unosi od jedne riječi, npr. Marelica , Mango , Naranče . Ako imate stavke koje se sastoje od dvije, tri ili više riječi, molimo pogledajte Kako stvoriti kaskadni padajući izbornik s unosima od više riječi.
- Imena zavisnih popisa moraju biti potpuno ista kao odgovarajući unos u glavnom popis. Na primjer, zavisni popis koji će se prikazati kada se " Mango " odabere s prvog padajućeg popisa trebao bi imati naziv Mango .
Kada je gotovo , možda ćete htjeti pritisnuti Ctrl+F3 da otvorite prozor Upravitelj imena i provjerite imaju li svi popisi ispravna imena i reference.
3 . Napravite prvi (glavni) padajući popis
- U istoj ili drugoj proračunskoj tablici odaberite ćeliju ili nekoliko ćelija u kojima želite da se pojavi vaš primarni padajući popis.
- Idite na karticu Podaci , kliknite Provjera valjanosti podataka i postavite padajući popis na temelju imenovanog raspona na uobičajeni način odabirom Popis pod Dopusti i unesite naziv raspona uOkvir Izvor .
Za detaljne korake pogledajte Izrada padajućeg popisa na temelju imenovanog raspona.
Kao rezultat, imat ćete padajući izbornik na svom radnom listu sličan ovome:
4. Stvorite zavisni padajući popis
Odaberite ćeliju(e) za svoj zavisni padajući izbornik i ponovno primijenite provjeru valjanosti podataka programa Excel kao što je opisano u prethodnom koraku. Ali ovaj put, umjesto naziva raspona, unesite sljedeću formulu u polje Izvor :
=INDIRECT(A2)
Gdje je A2 ćelija s vašom prvom (primarnom) padajući popis.
Ako je ćelija A2 trenutno prazna, dobit ćete poruku o pogrešci " Izvor trenutno procjenjuje pogrešku. Želite li nastaviti ? "
Sigurno kliknite Da , i čim odaberete stavku s prvog padajućeg izbornika, vidjet ćete unose koji joj odgovaraju u drugom, ovisnom , padajući popis.
5. Dodajte treći zavisni padajući popis (neobavezno)
Ako je potrebno, možete dodati treći kaskadni padajući popis koji ovisi ili o odabiru u drugom padajućem izborniku ili o odabirima u prvom dva padajuća izbornika.
Postavite 3. padajući izbornik koji ovisi o drugom popisu
Možete napraviti padajući popis ove vrste na isti način kao što smo upravo napravili drugi zavisni padajući izbornik donji izbornik. Zapamtite 2 gore spomenute važne stvari koje su bitne zaispravan rad vaših kaskadnih padajućih popisa.
Na primjer, ako želite prikazati popis regija u stupcu C ovisno o tome koja je zemlja odabrana u stupcu B, stvorite popis regija za svaku zemlju i nazovite je prema nazivu zemlje, točno onako kako se zemlja pojavljuje na drugom padajućem popisu. Na primjer, popis indijskih regija trebao bi biti nazvan "Indija", popis kineskih regija - "Kina", i tako dalje.
Nakon toga, odaberite ćeliju za 3. padajući izbornik (C2 u našem case) i primijenite Excel Data Validation sa sljedećom formulom (B2 je ćelija s drugim padajućim izbornikom koji sadrži popis zemalja):
=INDIRECT(B2)
Sada, svaki put kada odaberete Indiju ispod popisa zemalja u stupcu B, imat ćete sljedeće mogućnosti u trećem padajućem izborniku:
Napomena. Prikazani popis regija jedinstven je za svaku zemlju, ali ne ovisi o odabiru na prvom padajućem popisu.
Stvorite treći padajući izbornik ovisno o prva dva popisa
Ako trebate stvoriti kaskadni padajući izbornik koji ovisi o odabirima na prvom i drugom padajućem popisu, nastavite na ovaj način :
- Stvorite dodatne skupove imenovanih raspona i dajte im naziv prema kombinacijama riječi u prva dva padajuća izbornika. Na primjer, imate Mango, Naranče itd. na 1. popisu i Indiju, Brazil itd. na 2. popisu.Zatim stvarate imenovane raspone MangoIndia , MangoBrazil , OrangesIndia , OrangesBrazil , itd. Ova imena ne smiju sadržavati podvlake ili bilo koje druge dodatne znakove .
=INDIRECT(SUBSTITUTE(A2&B2," ",""))
Gdje A2 i B2 sadrže prvi i drugi padajući izbornik.
Kao rezultat, vaš 3. pad -donji popis prikazat će regije koje odgovaraju Voću i Zemlji odabranim na prva 2 padajuća popisa.
Ovo je najlakši način za stvaranje kaskadnih padajućih okvira u Excelu. Međutim, ova metoda ima brojna ograničenja.
Ograničenja ovog pristupa:
- Stavke na vašem primarnom padajućem popisu moraju se sastojati od jedne riječi unose. Pogledajte kako stvoriti kaskadne padajuće popise s unosima od više riječi.
- Ova metoda neće raditi ako unosi u vašem glavnom padajućem popisu sadrže znakove koji nisu dopušteni u nazivima raspona, kao što je crtica ( -), ampersand (&), itd. Rješenje je stvoriti dinamički kaskadni padajući izbornik koji nema ovo ograničenje.
- Padajući izbornici stvoreni na ovaj način ne ažuriraju se automatski, tj. morat ćete promijenite imenovane raspone'reference svaki put kada dodate ili uklonite stavke na izvornim popisima. Da biste preskočili ovo ograničenje, pokušajte napraviti dinamički kaskadni padajući popis.
Stvorite kaskadne padajuće popise s unosima od više riječi
INDIREKTNE formule koje smo koristili u primjeru gore može obraditi samo stavke od jedne riječi. Na primjer, formula =INDIRECT(A2) neizravno upućuje na ćeliju A2 i prikazuje imenovani raspon točno s istim imenom kao u referenciranoj ćeliji. Međutim, razmaci nisu dopušteni u imenima programa Excel, zbog čega ova formula neće raditi s imenima od više riječi.
Rješenje je korištenje funkcije INDIRECT u kombinaciji sa SUBSTITUTE kao što smo to učinili prilikom stvaranja 3. padajući izbornik.
Pretpostavimo da među proizvodima imate Lubenicu . U ovom slučaju, popis izvoznika lubenica imenujete jednom riječju bez razmaka - Lubenica .
Zatim, za drugi padajući izbornik, primijenite Excel Data Validation sa sljedećom formulom koja uklanja razmaci od imena u ćeliji A2:
=INDIRECT(SUBSTITUTE(A2," ",""))
Kako spriječiti promjene u primarnom padajućem popisu
Zamislite sljedeći scenarij . Vaš je korisnik napravio odabire na svim padajućim popisima, a zatim se predomislio, vratio na prvi popis i odabrao drugu stavku. Kao rezultat toga, 1. i 2. odabir nisu usklađeni. Kako biste spriječili da se to dogodi, možda biste trebali blokirati sve promjene u prvom padajućemdolje čim se izvrši odabir na drugom popisu.
Da biste to učinili, kada kreirate prvi padajući izbornik, upotrijebite posebnu formulu koja će provjeriti je li neki unos odabran na drugom padajućem izborniku:
=IF(B2="", Fruit, INDIRECT("FakeList"))
Tamo gdje B2 sadrži drugi padajući izbornik, " Voće " je naziv popisa koji se pojavljuje u prvom padajućem izborniku, a " FakeList " je bilo koje lažno ime koje ne postoji.
Sada, ako je bilo koja stavka odabrana na 2. padajućem popisu, nijedan izbor neće biti dostupan kada korisnik klikne na strelicu pored prvog popisa.
Stvaranje dinamičkih kaskadnih padajućih popisa u programu Excel
Glavna prednost dinamičkog padajućeg popisa ovisnog o programu Excel je ta da možete slobodno uredite izvorne popise i vaši će se padajući okviri ažurirati u hodu. Naravno, stvaranje dinamičkih padajućih izbornika zahtijeva malo više vremena i složenije formule, ali vjerujem da je ovo vrijedna investicija jer kada se jednom postave, s takvim padajućim izbornicima pravo je zadovoljstvo raditi.
Kao i s gotovo bilo što u Excelu, možete postići isti rezultat na nekoliko načina. Konkretno, možete stvoriti dinamički padajući izbornik pomoću kombinacije funkcija OFFSET, INDIRECT i COUNTA ili otpornije formule INDEX MATCH. Potonji je moj preferirani način jer pruža brojne prednosti, od kojih su najvažnije:
- Morate stvoriti samo 3 imenovana raspona, bez obzira kakomnoge stavke postoje u glavnom i zavisnim popisima.
- Vaši popisi mogu sadržavati stavke od više riječi i bilo koje posebne znakove.
- Broj unosa može varirati u svakom stupcu.
- Redoslijed sortiranja unosa nije bitan.
- Konačno, vrlo je lako održavati i mijenjati izvorne popise.
U redu, dosta teorije, krenimo na praksu.
1. Organizirajte svoje izvorne podatke u tablici
Kao i obično, prva stvar koju trebate učiniti je zapisati sve izbore za svoje padajuće liste u radni list. Ovaj put ćete morati pohraniti izvorne podatke u Excel tablicu. Za to, nakon što ste unijeli podatke, odaberite sve unose i pritisnite Ctrl + T ili kliknite karticu Umetni > Tablica . Zatim upišite naziv svoje tablice u okvir Naziv tablice .
Najpraktičniji i najvizualniji pristup je pohraniti stavke za prvi padajući izbornik kao zaglavlja tablice, a stavke za zavisni padajući izbornik kao podaci tablice. Snimak zaslona u nastavku ilustrira strukturu moje tablice pod nazivom exporters_tbl - nazivi voća su zaglavlja tablice, a popis zemalja izvoznica dodan je ispod odgovarajućeg naziva voća.
2. Stvorite Excel imena
Sada kada su vaši izvorni podaci spremni, vrijeme je da postavite imenovane reference koje će dinamički dohvatiti točan popis iz vaše tablice.
2.1. Dodajte naziv za redak zaglavlja tablice (glavni padajući izbornik)
Da biste stvorilinovi naziv koji upućuje na zaglavlje tablice, odaberite ga i zatim kliknite Formule > Upravitelj naziva > Novo ili pritisnite Ctrl + F3 .
Microsoft Excel koristit će ugrađeni referentni sustav tablice za stvaranje naziva uzorka table_name[#Headers] .
Daj malo smisleno i lako pamtljivo ime, npr. fruit_list i kliknite OK .
2.2. Napravite naziv za ćeliju koja sadrži prvi padajući popis
Znam da još nemate nikakav padajući izbornik :) Ali morate odabrati ćeliju koja će ugostiti vaš prvi padajući izbornik i stvoriti naziv za to ćeliju sada jer ćete ovo ime morati uključiti u referencu trećeg imena.
Na primjer, moj prvi padajući okvir se nalazi u ćeliji B1 na listu 2, pa sam mu stvorio naziv, nešto jednostavno i samoobjašnjavajući poput voće :
Savjet. Koristite odgovarajuće reference na ćelije za kopiranje padajućih popisa preko radnog lista.
Pažljivo pročitajte sljedećih nekoliko odlomaka jer je ovo vrlo koristan savjet koji ne želite propustiti . Puno hvala Karen što ju je objavila!
Ako planirate kopirati svoje padajuće popise u druge ćelije, koristite mješovite reference ćelija kada stvarate naziv za ćeliju(e) sa svojim prvim padajućim izbornikom popis.
Da bi se padajući izbornici pravilno kopirali u druge stupce (tj. desno), koristite relativni stupac (bez $