maanantai 16. tammikuuta 2017

Yleisökysymys: Laskutuksen alkavat tunnit

Jokin aika sitten minulta taas kysyttiin Excel-apua hommaan, joka oli alunperin täysin manuaalista, mutta joka automatisoitiin kaavalla hetkessä.

Lähtötilanne:  Yrityksen työntekijä teki asiakaslaskutusta ja laskutusehtojen mukaisesti pienin yksikkö oli puoli tuntia. Laskutettavat työtunnit piti siis saada pyöristettyä ylös seuraavaan täyteen puolituntiseen. Työajanhallintaohjelma oli jo valmiiksi muotoillut ajan desimaaliluvuiksi, joka on myös Excelin tapa käsitellä aikaa, joten yksi homma vähemmän hoidettavaksi. Dataa oli kuitenkin 2000 riviä (kuva vieressä) joka kuukausi ja kaikki rivit oli tähän asti käyty läpi käsin.

Keskustelun aikana itsellä kävi ensimmäisenä mielessä jokin äärimakee sisäkkäisten IF-lauseiden monsterikaava. Sen verran rokkitähteyttä tässä suonissa virtaa. ROUND() ja ROUNDUP() eivät toimi, koska pyöristävät matemaattisesti oikein vaikka niitä hiukan voikin ohjailla. Tässä tapauksessa oli tarve pakottaa pyöristää aina ylöspäin, riippumatta matemaattisista pyöristyssäännöistä.  



Hetken miettimisen (googlettelun) jälkeen, löysin juuri oikean kaavan.


CEILING (PYÖRISTÄ.KERR.YLÖS)
Palauttaa ylöspäin (nollasta poispäin) lähimpään tarkkuuden kerrannaiseen pyöristetyn luvun.

Syntaksi
PYÖRISTÄ.KERR.YLÖS(luku; tarkkuus) 
 
Lyhyt esimerkki luvuilla:
=CEILING(0,49;0,5) antaa tuloksen 0,5.
=CEILING(0,67;0,5) antaa tuloksen 1.
=CEILING(1,05;0,5) antaa tuloksen 1,5. 

Tässä vaiheessa kannattaa huomioida, että negatiivisilla luvuilla pyöristys ei ole *ylöspäin* vaan nimenomaan pois päin nollasta. Jos sinulla on tarve pyöristää nollan suuntaan, käytä FLOOR(PYÖRISTÄ.KERR.ALAS) -kaavaa.

PYÖRISTÄ.KERR.YLÖS-artikkeli Microsoftin Excel-tuessa.

Koska annoin apua FB:n Messengerin kautta, ei avun antaminen mennyt ykkösellä maaliin. Virheilmoituksien syytä haettiin ensin jenkki-suomiversioiden eri tavoista käyttää pilkkuja, pisteitä ja puolipisteitä desimaali- ja argumenttierottimina. Kun sain viestissä virheen sellaisena kuin se kaverin ruudulla näkyi (#nimi) ymmärsin, että minä oli lähettänyt hänen suomenkieliselle Excelille englanninkielisen kaavan. Nää on näitä. Onneksi Excelin oma Ohje-sivusto on todella hyvä. Lisäksi vastaavia tilanteita varten todella suuri apu on myös Excel-kääntäjästä, joka kääntää suoraan koko kaavan kerralla. Kielipareista (lähes) riippumatta.

Tämä yksinkertainen kaava säästi kaverille 2-4 tunnin duunin 4 kertaa kuukaudessa!! Pienestä se on välillä kiinni.

Ei kommentteja:

Lähetä kommentti