Sisällysluettelo
Ohjeessa näytetään, miten Excelin pudotusluettelo luodaan toisesta solusta riippuen käyttämällä uusia dynaamisia array-funktioita.
Yksinkertaisen pudotusluettelon luominen Excelissä on helppoa, mutta monitasoisen kaskadoituvan pudotusluettelon luominen on aina ollut haaste. Yllä olevassa linkitetyssä opetusohjelmassa kuvataan neljä erilaista lähestymistapaa, joista jokainen sisältää hullun määrän vaiheita, kasan erilaisia kaavoja ja kourallisen rajoituksia, jotka liittyvät monisanaisiin merkintöihin, tyhjiin soluihin jne.
Se oli huono uutinen. Hyvä uutinen on se, että nämä menetelmät oli suunniteltu Excelin dynaamisia versioita edeltäviin versioihin. Dynaamisten matriisien käyttöönotto Excel 365:ssä on muuttanut kaiken! Uusien dynaamisten matriisifunktioiden avulla useista riippuvaisten pudotusluetteloiden luominen on minuuttien, ellei jopa sekuntien kysymys. Ei temppuja, ei varoituksia, ei hölynpölyä. Ainoastaan nopeita, suoraviivaisia ja helposti seurattavia ratkaisuja.
Huomautuksia:
- Tämä uusi dynaaminen array-tapa tehdä pudotusluetteloita toimii vain Excel 365:ssä ja Excel 2021:ssä. Ennen dynaamista Exceliä sinun on tehtävä se vanhanaikaisella tavalla, kuten on kuvattu kohdassa Riippuvan pudotusluettelon luominen Excel 2019 - 2007.
- Tämä ratkaisu koskee vain yhtä riviä. Jos haluat kopioida valintalistat alaspäin. useita rivejä ja noudata sitten useiden rivien osalta riippuvainen-pudotusvalikossa annettuja ohjeita.
- Valitse solu, jossa haluat pudotusvalikon näkyvän (tässä tapauksessa D3).
- On Tiedot välilehdellä, kohdassa Tietotyökalut ryhmää, napsauta Tietojen validointi .
- Vuonna Tietojen validointi valintaikkunassa, toimi seuraavasti:
- osoitteessa Salli , valitse Luettelo .
- Vuonna Lähde laatikkoon, kirjoita viittaus UNIQUE-kaavan tulostamaan vuotoalueeseen. Kirjoita tätä varten hash-tunniste heti soluviittauksen jälkeen, esimerkiksi näin: =$G$3#
Tätä kutsutaan vuotoalueen viittaukseksi, ja tämä syntaksi viittaa koko alueeseen riippumatta siitä, kuinka paljon se laajenee tai supistuu.
Katso myös: Excel XLOOKUP-toiminto ja kaavaesimerkkejä - Klikkaa OK sulkeaksesi valintaikkunan.
- Jotta uusia merkintöjä avattavassa luettelossa automaattisesti , muotoile lähdetietosi Excel-taulukoksi. Tai voit sisällyttää kaavoihisi muutaman tyhjän solun, kuten tässä esimerkissä näytetään.
- Jos alkuperäisissä tiedoissasi on aukkoja, voit suodattaa tyhjät kohdat pois käyttämällä tätä ratkaisua.
- Osoitteeseen lajitella aakkosjärjestyksessä pudotusvalikon kohteita, kiedo kaavasi SORT-funktioon, kuten tässä esimerkissä selitetään.
- Osoitteeseen sisällyttää uusia tietoja automaattisesti, kun se lisätään lähdeluetteloon, lisää muutama ylimääräinen solu kaavoissa viitattuihin matriiseihin.
- Osoitteeseen jättää tyhjät solut pois , määritä kaavat jättämään tyhjät solut huomiotta, kunnes ne täytetään.
Kuinka tehdä dynaaminen pudotusluettelo Excelissä
Tässä esimerkissä esitellään yleinen lähestymistapa Excelin kaskadoituvan pudotusluettelon luomiseen käyttämällä uusia dynaamisia array-funktioita.
Oletetaan, että sarakkeessa A on luettelo hedelmistä ja sarakkeessa B viejistä. Lisävaikeutena on se, että hedelmien nimet eivät ole ryhmiteltyjä, vaan hajallaan eri sarakkeissa. Tavoitteena on sijoittaa hedelmien yksilölliset nimet ensimmäiseen pudotusvalikkoon ja näyttää käyttäjän valinnasta riippuen asiaankuuluvat viejät toisessa pudotusvalikossa.
Voit luoda dynaamisen riippuvaisen pudotusluettelon Excelissä seuraavasti:
1. Hanki kohteita pääpudotusluetteloon
Aluksi poimimme kaikki eri hedelmien nimet sarakkeesta A. Tämä voidaan tehdä käyttämällä UNIQUE-funktiota sen yksinkertaisimmassa muodossa - anna hedelmälista ensimmäisenä argumenttina ( array ) ja jätä muut valinnaiset argumentit pois, sillä niiden oletusarvot toimivat meille hyvin:
=UNIQUE(A3:A15)
Kaava siirtyy soluun G3, ja kun painat Enter-näppäintä, tulokset siirtyvät automaattisesti seuraaviin soluihin.
2. Luo tärkein pudotusvalikko
Voit tehdä ensisijaisen pudotusluettelon määrittämällä Excelin tietojen validointisäännön seuraavasti:
Ensisijainen pudotusluettelosi on valmis!
3. Hanki kohteita riippuvaisten pudotusluetteloon.
Saadaksemme merkintöjä toissijaiseen pudotusvalikkoon suodatamme sarakkeen B arvot ensimmäisessä pudotusvalikossa valitun arvon perusteella. Tämä voidaan tehdä toisen dynaamisen array-funktion nimeltä FILTER avulla:
=FILTER(B3:B15, A3:A15=D3)
Kun B3:B15 ovat riippuvaisen pudotusvalikon lähdetiedot, A3:A15 ovat pääpudotusvalikon lähdetiedot ja D3 on pääpudotusvalikon solu.
Varmistaaksesi, että kaava toimii oikein, voit valita jonkin arvon ensimmäisestä pudotusvalikosta ja tarkkailla FILTERin palauttamia tuloksia. Täydellistä! :)
4. Tee riippuvainen pudotusvalikko
Toisen pudotusluettelon luomiseksi määritä tietojen validointiperusteet täsmälleen samalla tavalla kuin ensimmäisen pudotusluettelon kohdalla vaiheessa 2. Tällä kertaa viittaat kuitenkin FILTER-funktion palauttamaan vuotoalueeseen: =$H$3#.
Se siitä! Excelistä riippuvainen pudotusvalikko on valmis käytettäväksi.
Vinkkejä ja huomautuksia:
Kuinka luoda useita riippuvaisia pudotusluetteloita Excelissä
Edellisessä esimerkissä teimme pudotusluettelon, joka riippuu toisesta solusta. Mutta entä jos tarvitset monitasoisen hierarkian, eli 3. pudotusluettelon, joka riippuu 2. luettelosta, tai jopa 4. pudotusluettelon, joka riippuu 3. luettelosta. Onko se mahdollista? Kyllä, voit luoda minkä tahansa määrän riippuvaisia luetteloita (kohtuullisen määrän, tietenkin :).
Tässä esimerkissä olemme sijoittaneet osavaltiot / maakunnat sarakkeeseen C ja haluamme nyt lisätä vastaavan pudotusvalikon sarakkeeseen G3:
Jos haluat tehdä Excelissä useasta riippuvaisen pudotusluettelon, sinun on tehtävä näin:
1. Määritä ensimmäinen pudotusvalikko
Pääpudotusluettelo luodaan täsmälleen samoilla vaiheilla kuin edellisessä esimerkissä (katso vaiheet 1 ja 2 edellä). Ainoa ero on, että vuodatusalueen viittaus, joka syötetään kenttään Lähde laatikko.
Tällä kertaa UNIQUE-kaava on E8:ssa, ja tärkein pudotusluettelo on E3:ssa. Valitse siis E3, napsauta kohtaa Tietojen validointi , ja anna tämä viite: =$E$8#
2. Määritä toinen pudotusvalikko
Kuten olet ehkä huomannut, sarakkeessa B on nyt useita samojen viejien esiintymiä. Haluat kuitenkin pudotusluetteloon vain yksilöllisiä nimiä, eikö niin? Jos haluat jättää kaikki päällekkäiset esiintymät pois, kierrä UNIQUE-funktio FILTER-kaavasi ympärille ja kirjoita tämä päivitetty kaava F8-näppäimellä:
=UNIQUE(SUODATIN(B3:B15, A3:A15=E3))
Jossa B3:B15 ovat toisen pudotusvalikon lähdetiedot, A3:A15 ovat ensimmäisen pudotusvalikon lähdetiedot ja E3 on ensimmäinen pudotusvalikon solu.
Käytä sen jälkeen seuraavaa vuodonvälitysalueen viitettä tietojen validointiperusteissa: =$F$8#.
3. Määritä kolmas pudotusvalikko
Kun haluat kerätä kohteet 3. pudotusluetteloon, käytä FILTER-kaavaa, jossa on useita kriteerejä. Ensimmäinen kriteeri tarkistaa koko hedelmälistan 1. pudotusluettelossa valittua arvoa vastaan (A3:A15=E3), kun taas toinen kriteeri testaa viejien luettelon 2. pudotusluettelossa tehtyä valintaa vastaan (B3:B15=F3). Koko kaava menee kohtaan G8:
=FILTER(C3:C15, (A3:A15=E3) * (B3:B15=F3))
Jos aiot lisätä lisää riippuvaisia pudotusvalikoita (4., 5. jne.), sarake C sisältää todennäköisesti useita saman kohteen esiintymiä. Estääksesi kaksoiskappaleiden pääsyn valmistelu-taulukkoon ja siten 3. pudotusvalikkoon, sisällytä FILTER-kaava UNIQUE-toimintoon, kuten teimme edellisessä vaiheessa:
=UNIQUE(FILTER(C3:C15, (A3:A15=E3) * (B3:B15=F3))))
Viimeisenä sinun on luotava vielä yksi Data Validation -sääntö, jossa on tämä sääntö Lähde viite: =$G$8#
Useista riippuvaisista henkilöistä koostuva pudotusvalikko on valmis!
Vinkki. Vastaavalla tavalla voit hankkia esineitä varten seuraavat pudotusvalikot Jos oletetaan, että sarake D sisältää neljännen pudotusluettelon lähdetiedot, voit syöttää H8:aan seuraavan kaavan vastaavien kohteiden hakemiseksi:
=UNIQUE(FILTER(D3:D15, (A3:A15=E3) * (B3:B15=F3) * (C3:C15=G3))))
Miten tehdä laajennettava pudotusluettelo Excelissä?
Kun olet luonut pudotusluettelon, ensimmäinen huolenaiheesi voi olla, mitä tapahtuu, kun lisäät uusia kohteita lähdetietoihin. Päivittyykö pudotusluettelo automaattisesti? Jos alkuperäiset tietosi on muotoiltu Excel-taulukoksi, edellisissä esimerkeissä käsitelty dynaaminen pudotusluettelo laajenee automaattisesti ilman, että joudut tekemään mitään, koska Excel-taulukot ovat luonteeltaan laajennettavissa.
Jos Excel-taulukon käyttäminen ei jostain syystä ole mahdollista, voit tehdä avattavasta luettelosta laajennettavan tällä tavalla:
Pidetään nämä kaksi kohtaa mielessä ja hienosäädetään tietojen valmisteluaikataulukon kaavoja. Tietojen validointisäännöt eivät vaadi lainkaan muutoksia.
Pääpudotusvalikon kaava
Kun hedelmien nimet ovat kohdissa A3:A15, lisäämme matriisiin 5 ylimääräistä solua mahdollisten uusien merkintöjen huomioon ottamiseksi. Lisäksi upotamme FILTER-funktion UNIQUE-funktioon poimimaan yksilölliset arvot ilman tyhjiä.
Edellä esitetyn perusteella G3:n kaava on seuraavanlainen:
=UNIQUE(FILTER(A3:A20, A3:A20"")))
Riippuvaisen pudotusvalikon kaava
G3:n kaavaa ei tarvitse juurikaan säätää, kunhan laajennat taulukoita muutamalla solulla:
=FILTER(B3:B20, A3:A20=D3)
Tuloksena on täysin dynaaminen laajennettava riippuvainen pudotusluettelo:
Miten lajitella pudotusluettelo aakkosjärjestyksessä
Haluatko järjestää pudotusluettelosi aakkosjärjestykseen ilman lähdetietoja? Uudessa dynaamisessa Excelissä on erityinen toiminto myös tätä varten! Kiedo tietojen valmistelutietotaulukkoon SORT-funktio olemassa olevien kaavojen ympärille.
Tietojen validointisäännöt määritetään täsmälleen kuten edellisissä esimerkeissä on kuvattu.
Lajittelu A:sta Z:hen
Koska nouseva lajittelujärjestys on oletusvaihtoehto, voit vain sijoittaa olemassa olevat kaavat kenttään array argumentti SORT:lle ja jättää kaikki muut valinnaiset argumentit pois.
Sillä tärkein pudotusvalikko (G3:n kaava):
=SORT(UNIQUE(FILTER(A3:A20, A3:A20""))))
Sillä riippuvainen pudotusvalikko (H3:n kaava):
=SORT(FILTER(B3:B20, A3:A20=D3))
Valmis! Molemmat pudotusluettelot lajitellaan aakkosjärjestykseen A-Z.
Lajittelu Z:stä A:han
Jos haluat lajitella alenevassa järjestyksessä, sinun on asetettava 3. argumentti ( sort_order ) SORT-funktion arvoksi -1.
Sillä tärkein pudotusvalikko (G3:n kaava):
=SORT(UNIQUE(FILTER(A3:A20, A3:A20"")), 1, -1)
Sillä riippuvainen pudotusvalikko (H3:n kaava):
=SORT(FILTER(B3:B20, A3:A20=D3), 1, -1)
Tämä lajittelee sekä valmistelutaulukon tiedot että pudotusvalikoiden kohteet Z:stä A:han:
Näin luodaan dynaaminen pudotusluettelo Excelissä uusien dynaamisten array-funktioiden avulla. Toisin kuin perinteiset menetelmät, tämä lähestymistapa toimii täydellisesti yhden ja usean sanan merkinnöille ja huolehtii tyhjistä soluista. Kiitos lukemisesta ja toivottavasti näemme sinut blogissamme ensi viikolla!
Käytännön työkirja ladattavissa
Excel-riippuvainen pudotusluettelo (.xlsx-tiedosto)