Esikatselu — Kunnolla Vauhtiin -kurssimateriaali (FI). Ei tuotantoa.
Sivu 10 / 13

PHAKU-funktio

PHAKU‑funktiolla voi hakea hakutaulukosta eli Excel-taulukon määritellystä osasta tietoja ja käyttää niitä solujen sisällön määräämiseen. Funktion nimen P-kirjain viittaa pystyriviin eli sarakkeeseen: hakutaulukon ensimmäinen sarake toimii aina tiedonhaun pohjana. Hakutaulukon jossakin muussa sarakkeessa on varsinainen haettava tieto.

Funktion argumentit

=<ek-term id="func_vlookup" />(Hakuarvo;Taulukko_matriisi;Sar_indeksi_nro;Alue_haku)

Hakuarvo on arvo, jota etsitään osataulukon ensimmäisestä sarakkeesta. Pakollinen tieto

Taulukko_matriisi on hakutaulukko eli Excel-taulukon osa, jossa on vähintään kaksi saraketta. Luettelon ensimmäisessä sarakkeessa tulee olla ne arvot, joiden joukosta etsitään. Jos sama arvo esiintyy useita kertoja, funktio löytää niistä ensimmäisen. Pakollinen tieto

Sar_indeksi on hakutaulukon sen sarakkeen järjestysnumero, josta varsinainen tieto noudetaan. Huomaa, että tässä siis on luku, ei sarakekirjainta. Pakollinen tieto

Alue_haku on looginen arvo TOSI tai EPÄTOSI, jolla kerrotaan, halutaanko niin sanottu aluehaku. Aluehaku on oletusarvona, ja se merkitsee, että jos sarakkeessa ei ole arvoa, joka on sama kuin hakuarvo, funktio etsii sarakkeesta sen arvon, joka on hakuarvoa lähinnä alempi. Aluehaku merkitsee luokittelemista alueisiin, joiden rajat 1. sarake asettaa.

Esimerkki 1

Tässä esimerkissä asiakkaan nimeä haetaan hakutaulukosta laskun numeron perusteella.

Hakuarvo on laskun numero, jonka on sijaittava hakutaulukon ensimmäisessä sarakkeessa.

Hakutaulukko on tässä Excel−taulukon sarakkeiden A–C rivit 6–15. Hakutaulukkoon ei ole syytä ottaa mukaan otsikkoriviä (tässä ”Laskun nro ...”).

Tieto tuodaan hakutaulukon sarakkeesta 2. Hakuarvoa etsitään aina hakutaulukon ensimmäisestä sarakkeesta, vaikkei hakutaulukko alkaisikaan A-sarakkeeesta.

EPÄTOSI tarkoittaa, että hakutaulukosta tuodaan vain täysin hakuarvoa vastaava tieto. Jos tietoa ei löydy taulukosta, vastaukseksi tulee ”#PUUTTUU!”.

Kuvassa on funktio =PHAKU(C1;A6:C15;2;EPÄTOSI)
Kuvassa on funktio =PHAKU(C1;A6:C15;2;EPÄTOSI)

Tässä sama kaava muuten, mutta Yhteensä-tieto tuodaan hakutaulukon kolmannesta sarakkeesta.

Kuvassa on kaava =PHAKU(C1;A6:C15;3;EPÄTOSI)
Kuvassa on kaava =PHAKU(C1;A6:C15;3;EPÄTOSI)

Esimerkki 2: Luokitteleva haku

Luokittelevassa haussa ei etsitä tiettyä tietoa hakutaulukon 1. sarakkeesta, vaan luokitellaan hakuarvot luokkiin, jotka kyseinen sarake määrittelee. Sarakkeessa oleva arvo asettaa tietyn luokan alarajan.

Haku on luokitteleva, kun PHAKU‑funktion neljännen argumentin arvo on TOSI.

Kuvassa on ostot 0,1000,5000,10000,15000 ja niitä vastaavat asiakasryhmät XS,S,M.L,XL
Kuvassa on ostot 0,1000,5000,10000,15000 ja niitä vastaavat asiakasryhmät XS,S,M.L,XL
Hakutaulukon on oltava tällöin lajiteltu ensimmäisen sarakkeen mukaan nousevaan järjestykseen.

Tässä esimerkissä halutaan luokitella asiakkaat asiakasryhmittäin ostojen suuruuden perusteella. Hakutaulukkoon on luokiteltu ostot ryhmittäin, ja ostorajat on esitetty pienimmästä suurimpaan.

Hakuarvo on ensimmäisen asiakkaan ostot.

Hakutaulukko on taulukko, jossa ostorajat ovat luokiteltuina asiakasryhmittäin. Huomaa, että kaavassa taulukosta on tehty suora viittaus, jotta se kaavaa kopioidessa pysyy muuttumattomana.

Asiakasryhmä-tieto tuodaan kaavaan hakutaulukon sarakkeesta 2.

Viimeiseksi argumentiksi on määritelty TOSI, jotta haku tapahtuisi alarajasta seuraavaan alarajaan. Esimerkiksi XS-luokitus tulee ostoille, jotka ovat pienempiä kuin 1000, ja S-luokitus ostoille, jotka ovat >= 1000 ja < 5000.

Kuvassa on koko PHAKU-funktio kokonaisuudessaan
Kuvassa on koko PHAKU-funktio kokonaisuudessaan

Video

Tavoite

Asiakasryhmä‑taulukkolehdellä asiakkaat on luokiteltu tekemiensä ostosten perusteella asiakasryhmään XS, S, M, L tai XL hakutaulukon perusteella. Hakutaulukossa on kunkin asiakasryhmän ostojen alaraja. Esimerkiksi asiakas, jolla on ostoja 4 999,00 €, kuuluu ryhmään S, mutta asiakas jolla ostoja on 5 000,00, kuuluu puolestaan ryhmään M. Malli:

Kuva mallityökirjasta
Kuva mallityökirjasta
Tehtävä: Aseta asiakasryhmätiedot PHAKU-funktiolla

Tee harjoitus Asiakasryhmä‑taulukkolehdelle.

Tee soluun D11 PHAKU‑funktio, joka käy hakemassa hakutaulukosta ostojen mukaan oikean asiakasryhmätunnuksen.

Tehtävä: Kopioi kaava kaikille asiakkaille

Kopioi kaava lopuksi kaikille asiakkaille.

EiKyllä