maanantai 13. lokakuuta 2008

Excelin ehdollinen muotoilu, sovellusesimerkki

Viimeisimmässä Tietokone-lehdessä on Excel 2007-version ehdollista muotoilua esittelevä artikkelini, jota laajentamaan sopii seuraava Excel ja Excel Services -blogista löytämäni vinkki. Siihen liittyy myös videoleike, joka ainakin itselläni jämähti paikoilleen jo toisessa lauseessa, joten lisään varmuuden vuoksi toisen linkin videon alkuperäiseen sijaintiin. Kuvan laatu on kehno. Luultavasti tästä syystä englanninkieliseen blogiin on lukijaystävällisesti lisätty kaavat tekstimuodossa ja minä jatkan samaa linjaa kirjoittamalla tänne tarvittavat komennot suomeksi ja videolla kirjoitetun kaavan sellaisena kuin suomenkielinen Excel sen kelpuuttaa.

Mutta näin se siis menee:

Ensin kirjoitetaan taulukossa johonkin sopivaan paikkaan allekkaisiin soluihin esimerkiksi "Pois" ja "Käytössä". Sen jälkeen solut valitaan ja alue nimetään, esimerkiksi "vaihtoehdot" lienee sopivan kuvaava nimi. Alueen nimeäminen on helpointa toteuttaa kirjoittamalla nimi kaavarivin vasemmalla puolella olevaan tilaan ja painamalla Enter. Seuraavaksi valitaan solu jostakin taulukon yläpuolelta ja lisätään siihen kelpoisuustarkistus – 2007-versiossa kelvollinen muotoilu löytyy Tiedot-välilehdeltä (Data) kohdasta Tietojen kelpoisuuden tarkistaminen (Data Validation). Kelpoisuusehtojen kohdalle valitaan Hyväksy-kohdasta (Allow) Luettelo (List) ja kirjoitetaan Lähde-ruutuun "=vaihtoehdot". Solusta tulee tämän jälkeen avattava luettelo, jossa on 2 vaihtoehtoa, Pois ja Käytössä.

Seuraavaksi määritellään varsinainen ehdollinen muotoilu tai vaikka kaksi, kuten videollakin tehdään. Lopuksi määritellään muotoilu, jonka kriteeri määritellään kaavan avulla. Videolla neuvotun kaavan, joka kuvan mukaisessa taulukossa olisi muotoa =JOS($A$1=$A$15;1;0), tilalle kannattaa kirjoittaa =$A$1=$A$15, jolloin kieliversiolla ei ole väliä. Excelin ehdollisen muotoilun käyttämien kaavojenhan pitää palauttaa totuusarvo ja molemmat edellä olevat kaavat ovat tällaisia. Kaavan perusteella toteutuvan ehdon on sijaittava ylimmäisenä Ehdollisen muotoilun sääntöjen hallinta -valintaikkunassa (Conditional Formatting Rules Manager) ja sen kohdalle on lisättävä valintamerkki Lopeta, jos tosi -ruutuun (Stop If True). Oletusarvoisestihan kaikki säännöt pyritään huomioimaan, vaikka siitä sitten seuraisi virhetilanne. Lopeta, jos tosi -kohdan valinta vaikuttaa kuitenkin siten, että arvo TOSI lopettaa ehdollisen muotoilun käytön valitulla alueella. Tässä siis solun A1 arvon ollessa sama kuin solun A15 arvo "Pois", seuraavaa ehtoa ei enää tutkita ja muotoilu jätetään tekemättä. Jos kaava palauttaa arvon EPÄTOSI, siirrytään seuraavan ehdon kohdalle eli muotoilu toteutetaan.

No mihin tämmöistä sitten käyttäisi? Yleensä vinkille kuin vinkille löytyy käytännön elämässä useitakin käyttökohteita. Itse käyttäisin tätä vaikka taulukossa, jota halutaan tarkastella näytöltä ehdollisen muotoilun merkintöjen näkyessä, mutta joka pitää saada myös tulostettua siistissä raporttimuodossa ilman lisäkorostuksia. (Se mikä näkyy tulostuksen esikatselunäkymässä, lähtee myös paperille ja näkyy PDF-muotoisessa tiedostossa.)

Jotta Pois- ja Käytössä-tekstit eivät näkyisi tulostettaessa tai PDF-tiedostossa, varsinaisen taulukon alue kannattaa määritellä tulostusalueeksi. Esimerkkitaulukon mukaisessa tilanteessa myös rivit 15 ja 16 kannattaa piilottaa tai sijoittaa vaikka taulukon oikealla puolella oleviin sarakkeisiin, jolloin ne eivät häiritse taulukon katselua.

Ei kommentteja: