Sisällysluettelo
Kuinka hyvä olisi, jos solut täyttyisivät automaattisesti? Useimmiten rakastamme sitä. Tänään näytämme, miten Excelin solut täytetään automaattisesti toisen solun arvon perusteella. Tässä istunnossa käytämme Excel 2019 -ohjelmaa, voit vapaasti käyttää haluamaasi versiota.
Tutustutaan ensin tietokokonaisuuteen, joka on tämänpäiväisten esimerkkien pohjana.
Tässä meillä on taulukko, joka sisältää työntekijöiden tietoja, kuten nimi, tunnus, osoite, osasto ja liittymispäivä. Näiden tietojen avulla katsomme, miten solut täytetään automaattisesti.
Huomaa, että tämä on perustietokanta, jossa on tyhjiä tietoja. tosielämän skenaariossa saatat törmätä paljon suurempaan ja monimutkaisempaan tietokantaan.
Käytännön työkirja
Voit ladata harjoituskirjan alla olevasta linkistä.
Automaattinen solujen täyttäminen Excelissä toisen Cell.xlsxin perusteellaAutomaattinen solujen täyttäminen toisen solun perusteella
Tässä esimerkissä asetamme esimerkin siten, että kun annamme työntekijän nimen, löydämme hänen tietonsa automaattisesti.
Tässä olemme ottaneet käyttöön alkuperäisestä taulukosta erotetut tietokentät. Sanotaan, että asetamme kentän Nimi, Robert .
Sitten meidän pitäisi saada tiedot Robert Tutkitaan, miten voimme tehdä sen.
1. VLOOKUP-toiminnon käyttäminen
Unohda hetkeksi "automaattinen täyttäminen" ja ajattele kriteerejä vastaavien tietojen hakemista, mitä toimintoja tulee mieleesi? Se on aivan ilmeistä, VLOOKUP on yksi niistä.
VLOOKUP etsii tietoja, jotka on järjestetty pystysuoraan. Lisätietoja on tässä VLOOKUP-artikkelissa.
Nyt kirjoitamme kaavan, jossa käytetään muotoa VLOOKUP funktio, joka hakee täsmälleen haluamamme tiedot solusta.
Kirjoitetaan kaava työntekijän id:n saamiseksi.
=IFERROR(VLOOKUP($I$4,$B$4:$F$9,2,0),"")
Sisällä VLOOKUP funktiossa olemme lisänneet nimen ( I4) kuten lookup_value . Sitten koko taulukkoalue kuin lookup_array .
The Työntekijän tunnus on 2. sarake, joten olemme asettaneet 2:n sarakkeeksi column_num .
Olemme käyttäneet IFERROR funktio käärimään VLOOKUP Tämä poistaa kaikki kaavasta johtuvat virheet (lisätietoja funktiosta on artikkelissa: IFERROR).
Osaston nimen johtamiseksi meidän on muutettava kaavaa,
=IFERROR(VLOOKUP($I$4,$B$4:$F$9,3,0),"")
Tässä olemme muuttaneet column_num alkuperäisessä taulukossa olevan aseman mukaan. Osasto on kolmas sarake, joten olemme käyttäneet 3.
Sillä Liittymispäivä ja Osoite, kaava on
=IFERROR(VLOOKUP($I$4,$B$4:$F$9,4,0),"")
Ja
=IFERROR(VLOOKUP($I$4,$B$4:$F$9,5,0),"")Olemme löytäneet työntekijän tiedot. Muuta nyt nimi, niin solut päivittyvät automaattisesti.
VLOOKUP ja pudotusluettelo
Aiemmin annoimme nimen manuaalisesti. Joskus se voi tuntua aikaa vievältä ja hämmentävältä.
Ongelman ratkaisemiseksi voimme tehdä pudotusluettelon työntekijän nimelle. Tarkista artikkeli, jossa kerrotaan pudotusluettelon tekemisestä.
Vuonna Tietojen validointi Valitse valintaikkunassa Luettelo ja lisää nimien soluviittaukset.
B4:B9 on alue, joka sisältää nimet.
Nyt löydämme avattavan luettelon.
Voimme nyt valita nimen tehokkaammin ja nopeammin.
Muut solut täytetään automaattisesti, koska käytimme seuraavia soluja VLOOKUP .
2. INDEX - MATCH -toiminnon käyttäminen
Operaatio, jonka olemme suorittaneet VLOOKUP voidaan tehdä vaihtoehtoisesti. Voimme käyttää yhdistelmää INDEX-MATCH täyttää solut automaattisesti.
MATCH paikantaa hakuarvon sijainnin rivillä, sarakkeessa tai taulukossa. INDEX palauttaa arvon tietyssä kohdassa alueella. Lisätietoja saat artikkeleista: INDEX, MATCH.
Kaava on seuraava
=IFERROR(INDEX($C$4:$C$9,MATCH($I$4,$B$4:$B$9,0)),"")
Tässä kaava johtaa id-numeron, koska olemme antaneet id-alueen, jonka sisällä on INDEX ja MATCH funktio antaa rivin numeron, joka vastaa taulukon kriteerien arvoa ( B4:B9 ).
Jotta voidaan johtaa Osasto muutamme alueen INDEX ja kaava on seuraava
=IFERROR(INDEX($D$4:$D$9,MATCH($I$4,$B$4:$B$9,0)),"")
Osastot ovat välillä D4 osoitteeseen D9 .
Kaava, joka koskee Liittymispäivä on
=IFERROR(INDEX($E$4:$E$9,MATCH($I$4,$B$4:$B$9,0)),"")
Ja osoite
=IFERROR(INDEX($F$4:$F$9,MATCH($I$4,$B$4:$B$9,0)),"")
Selvyyden vuoksi poistetaan valinta ja valitaan jokin nimistä.
Muut solut täyttyvät automaattisesti.
3. HLOOKUP-funktion käyttäminen
Jos datasi on suunnattu vaakasuoraan, sinun on käytettävä komentoa HLOOKUP Toiminnosta saat tietoa tästä artikkelista: HLOOKUP.
Nimi kenttä asetetaan avattavasta luettelosta, ja muut kentät täytetään automaattisesti.
Id:n määrittämiseen käytetään seuraavaa kaavaa.
=IFERROR(HLOOKUP($C$11,$C$3:$H$7,2,0),"")
Toiminto on samanlainen kuin VLOOKUP kaava. HLOOKUP funktio, olemme antaneet nimen lookup_value ja taulukko kuin lookup_array Tunnukset ovat 2. rivillä, joten row_num on 2. Ja 0 tarkalle vastaavuudelle.
Nyt osaston osalta kaava on seuraavanlainen
=IFERROR(HLOOKUP($C$11,$C$3:$H$7,3,0),"")
The Osasto on kolmas rivi, joten row_num on 3 täällä.
Kirjoitetaan kaava liittymispäivämäärää varten.
=IFERROR(HLOOKUP($C$11,$C$3:$H$7,4,0),"")
The Liittymispäivä on neljäs rivi, joten row_num on tässä 4. Vaihda sitten osoitteen rivinumeroksi 5.
=IFERROR(HLOOKUP($C$11,$C$3:$H$7,5,0),"")
Pyyhitään solut pois ja valitaan nimi avattavasta luettelosta.
Kun olet valinnut nimen, muut solut täyttyvät automaattisesti.
4. INDEX-MATCH riveille
Voimme myös käyttää INDEX MATCH yhdistelmä riveille. Kaava on seuraava
=IFERROR(INDEX($C$4:$H$4,MATCH($C$11,$C$3:$H$3,0)),"")
Tämä on id:n johtamista varten, joten olemme käyttäneet komentoa C4:H4 vuonna INDEX toiminto, joka on Työntekijän tunnus rivi.
Vaihda riviväliä osaston löytämiseksi
=IFERROR(INDEX($C$5:$H$5,MATCH($C$11,$C$3:$H$3,0)),"")
Vaihda vastaavasti liittymispäivän ja -osoitteen rivinumeroa.
=IFERROR(INDEX($C$6:$H$6,MATCH($C$11,$C$3:$H$3,0)),"")
Tässä C6:H6 on Liittymispäivä rivi.
Ja C7:H7 on Osoite rivi, joten osoitteen laskentakaava on alla olevan kaltainen.
=IFERROR(INDEX($C$7:$H$7,MATCH($C$11,$C$3:$H$3,0)),"")Päätelmä
Siinä kaikki tältä päivältä. Olemme luetelleet useita tapoja täyttää solut automaattisesti toisen solun perusteella. Toivottavasti tämä on sinulle hyödyllistä. Voit vapaasti kommentoida, jos jotain tuntuu vaikealta ymmärtää. Kerro meille muista menetelmistä, joita emme ole käyttäneet tässä.