Noget om afrunding

Meget ofte har man brug for at foretage forskellige afrundinger af tal eller resultater i Excel, så disse ikke vises med det reelle antal decimaler. Afrundingen kan ske gennem formatering (som ikke er en reel afrunding), eller ved at bruge en af en række funktioner i Excel, som netop har til formål at foretage afrunding.

Ved afrunding via formatering, foretages som nævnt ikke nogen reel afrunding, men et antal eller alle decimaler kan skjules. Har man fx tallet 2,345 i en celle, vil en formatering til to decimaler, resultere i at tallet vises som 2,35 idet formatering anvender de almindelige afrundingsregler, hvilket vil sige at cifre på 5 eller derover rundes op, mens tal under 5 rundes ned. I cellen står imidlertid det oprindelige tal, og det vil være det, som bliver anvendt i fortsatte beregninger, ikke det viste. Ganger vi således de 2,35 med 10 bliver resultatet 23,45, ikke 23,50 som nogen  måske ville forvente.

Formaterer vi i stedet 2,345 med én decimal vil nogen forvente, at resultatet bliver 2,4, da det sidste femtal jo forhøjes og det næste ciffer derfor bliver 5, som igen skal forhøjes. Sådan fungerer det imidlertid ikke. Når man "anmoder" om den formatering med et antal decimaler, ser Excel alene på det ciffer, der kommer lige efter den sidste decimal, der skal vises. I dette tilfælde er det firetallet, og da det er under fem, skal der ikke rundes op. Dette kan specielt overraske, hvis afrundingen sker i sammenkædede celler. I A1 står 2,345. I B1 står =A1 og det formateres til 2 decimaler (2,35) og C1 står =B1 som formateres til én decimal (2,3). Så er man måske ikek lige opmærksom på, at det tal, der refereres til, allerede er formateret med færre decimaler.

Ønsker man at Excel kun skal bruge de tal, der reelt er vist i cellerne i fortsattre beregninger, kan man ændre indstillingerne for programmet. Det sker i Excel 2003 under Funktioner - Indstillinger, fanebladet Beregning. Her sættes flueben i "Præcision som vist". I Excel 2007u vælger Excel-indstillinger under Office-knappen. Herefter vælger Avanceret. Under "Ved beregning af denne projektmappe" sætte flueben i "Angiv vist nøjagtighed". Nu regnes kun med de decimaler, der faktisk er vist i cellerne. Problemet i at bruge denne løsning er, at nu gælder det alle celler, hvor antallet af decimaler er formaterede - også de celler, hvor man man gerne skulle bruge alle decimaler, selv om de ikke er vist.

Alternativ kan man bruge en af de regne-funktioner, som findes i Excel til brug for forskellige former for afrunding. Det drejer sig om funktionerne Heltal, Afrund, Afkort, Lige, Ulige, Rund.Op, Rund.Ned, Afrund.Gulv, Afrund.Loft og Mafrund. Visse af disse funktioner er i nogle versioner af Excel kun tilgængelige, når tilføjelsesprogrammet Analysis Toolpak er installeret.

I alle disse funktioner, skal det, der afrundes altid være et tal, ellers returneres fejlen #VÆRDI! Det samme sker hvis andet argument i de funktioner, der har to argumenter, ikke er et tal.

HELTAL(tal)
Denne funktion tager heltalsdelen af et tal. Det vil sige, at decimalerne altid rundes ned til nærmeste hele tal. Både 2,345 og 2,543 bliver til 2. -2.0001 bliver til -3 fordi også negative tal rundes i nedadgående retning. Heltal har kun argumentet tal, som indikeret hvilket tal, der skal nedrundes. Heltal kan bruges til at finde decimalerne af et tal ved formlen A1-HELTAL(A1), hvor A1 er cellen, der skal undersøges. Dette gælder dog kun, hvis tallet, der skal undersøges er større end 0. Vil man finde decimaldelen af et negativt tal, kan denne formel bruges =1-(A1-HELTAL(A1)) eller =ABS(A1)-HELTAL(ABS(A1)), men mon ikke den første er nemmest :-)

- Til top -

AFRUND(tal;antal decimaler)
I denne som i flere af de andre afrundingsfunktioner, kan såvel ledeteksten i "Indsæt Funktion" guiden som teksten i hjælpen være forvirrende, da det andet argument kaldes "antal cifre". Det, der menes er imidlertid antal cifre efter kommaet - på almindeligt dansk "antal decimaler" og det er den formulering, jeg anvender her. Funktionen afrunder efter de gængse afrundingsregler. Tal over eller lig 5 rundes op, mens tal under 5 rundes ned. =AFRUND(2,535;2) afrundes til 2,54, mens 2,534 afrundes til 2,53. Angives 0 decimaler eller udelades dette argument afrundes til nærmeste heltal. =AFRUND(2,7;0) eller =AFRUND(2,7;) afrunder i begge tilfælde til 3. Angives et antal decimaler under 0, fx -1 afrundes til nærmeste hele 10, 100, 100 osv. =AFRUND(52,78;-1) bliver således til 50, mens =AFRUND(52,7;-2) bliver til 100.

Negative tal afrundes på samme måde som positive. =AFRUND(-2,74;1) bliver således til -2,7 mens =AFRUND(2,75;1) bliver til -2,8.

Der gælder i øvrigt samme regel som ovenfor, at der altid ses på det tal, der kommer lige efter den sidste plads, der skal vises. =AFRUND(2,745;2) bliver således til 2,75 mens =AFRUND(2,745;2 bliver til 2,7.

NB! I hjælpen til Excel 2007 står, at ønsker man altid at runde tal op (væk fra 0), skal man bruge funktionen AFRUNDP. Hvis du undrer dig over, hvorfor jeg ikke gennemgår denne funktion, er det fordi den faktisk slet ikke eksisterer i Excel 2007 på trods af, hvad hjælpen siger.

- Til top -

AFKORT(tal;antal decimaler)
AFKORT gør stgort set det samme som funktionen RUND.NED (se nedenfor). I hjælpen til Excel, kan man læse at den altid returnerer heltal, lige som funktyionen HELTAL, men dette er IKKE korrekt. I AFKORT er det sidste argument valgfrit og udfyldes det ikke, eller udfyldes det med 0, returneres hele tal.

Funktionen bruges på samme måde som AFRUND, men i stedet for at foretage en afrunding, fjernes simpelthen det antal decimaler, der ligger ud over det specificerede. =AFKORT(2,745;2) bliver således til 2,74, ikke 2,75 som ved AFRUND. Det samme sker ved negative tal, så her adskiller AFKORT sig fra HELTAL. =HELTAL(-2.0001) bliver til -3, mens =AFKORT(-2.0001) bliver til -2. 

Også i AFKORT kan man anvende et negativt antal decimalert og dermed afkorte til hele 10, 100 og så videre. =AFKORT(299,999;2) bliver således til 200, mens AFKORT(299,999;-1) bliver til 290.

NB! Vær opmærksom på at hjælpen til AFKORT i Excel 2007 pludselig referer til de engelske betegnelser for AFKORT (TRUNC) og HELTAL (INT)

- Til top -

LIGE(tal)
Denne funktion afrunder et tal til det nærmeste LIGE heltal. =LIGE(1) bliver til 2 og det samme gør alle decimal tal, der er større end 0 og mindre end 2. LIGE(2) bliver til 2, mens alle tal større end 2 men mindre end 4 bliver til 4, fx =LIGE(2,00001).

Ved negative tal rundes talværdien op, som i denne sammenhæng betyder væk fra 0. Der rundes altså ned til et mindre tal. LIGE(-0,000001) bliver således til -2.

- Til top -

ULIGE(tal)
ULIGE fungerer på helt samme måde som LIGE, bortset fra, at der rundes op eller ned til nærmeste ulige tal. ULIGE(1,01) bliver til 3, mens ULIGE(-2) bliver tgil -3.

Vær opmærksom på at 0 anses som et "lige" tal. =LIGE(0) bliver dermed 0. mens =ULIGE(0) bliver til 1.

- Til top -

RUND.OP(tal;antal decimaler)
Fungerer principielt efter samme regler som AFRUND, men runder altid op. =RUND.OP(-0,123;2) bliver til -0,13. =RUND.OP(0,123) bliver til 0,13. 0 runder op til nærmeste heltal. =RUND.OP(0,123;0) bliver således til 1.

Angives et antal decimaler under 0, fx -1 rundes op til nærmeste hele 10, 100, 100 osv. =RUND.OP(0,123;-1) bliver derfor til 10.

Læg i øvrigt mærke til at denne og de næste tre funktioner har punktum (.) mellem de to led i navnet.

- Til top -

RUND.NED(tal;antal decimaler)
RUND.NED har samme funktion som RUND.OP, men runder i stedet i nedadgående retning. =RUND.NED(3,265;2) bliver til 3,26). =RUND.NED(-3,265;2) bliver til -3,26-

Angives et antal decimaler under 0, fx -1 rundes ned til nærmeste hele 10, 100, 100 osv. =RUND.OP(0,123;-1) bliver derfor til 10. =RUND.NED(13,256;-1) bliver således til 10.

- Til top -

AFRUND.GULV(tal;betydning)
Denne funktion runder et tal nedad til det nærmeste multiplum af et andet tal, her kaldet betydning. =AFRUND.GULV(3,21;1) runder ned til det nærmeste multiplum af 1, altså 3. =AFRUND.GULV(3,21;2) runder ned til nærmeste multiplum af 2, altså 2. =AFRUND.GULV(3,21;0,25) returnerer nærmeste lavere multiplum ad 0,25, her 3. Ved negative tal rundes ned mod 0. =AFRUND.GULV(-3,21;-1) bliver til -3.

- Til top -

AFRUND.LOFT(tal;betydning)
Denne funktion fungerer fuldstændigt identisk med AFRUND.GULV, men runder i stedet op. Negative tal rundes væk fra 0. =AFRUND.GULV(-3,21;-1) bliver til -4.

Det er vigtigt at huske at tal og betydning skal have samme fortegn. =AFRUND.GULV(3,21;-1) eller =AFRUND.GULV(-3,21;1) vil således returnere fejlen #NUM!, mens =AFRUND.GULV(-3,21;-1) vil returnere -3.

- Til top -

MAFRUND(tal;multiplum)
Denne funktion ligner AFRUND:GULV og AFRUND.LOFT idet den afrunder et tal til et multiplum af et andet tal. =MAFRUND(3,4;2) bliver 4 fordi 4 er det nærmeste multiplum af 2. =MAFRUND(3;2) bliver ledes 4, da funktionen runder væk fra 0, hvis det højere og lavere multiplum ligger lige langt væk fra tallet, der skal afrundes. 

=MAFRUND(3,25;0,5) bliver 3,5, da der er lige langt fra 3,245 til 23 og til 3,5. Derimod bliver =MAFRUND(3,24;0,5) til 3, da 3,24 er tættere på 3 end på 3,5. Funktionen kan bruges til øreafrunding efter de almindelige danske regler. Den kan derfor bruges i stedet for denne formel: =AFRUND(A1/50;2)*50 som er nævnt under Småtips.

- Til top -
- Retur til Excel -