Avatar billede tida Juniormester
31. maj 2006 - 09:25 Der er 13 kommentarer og
1 løsning

Decimal problemer

Når jeg indtaster følgende formel i en celle

-1363081,57+1420683

så vises resultat korrekt som 57601,43

Men hvis jeg herefter kopierer cellen og indsætter som værdi bliver resultatet til 57601,429999999 - hvor kommer alle disse decimaler fra ???? - kan nogen hjælpe mig med det.
Avatar billede x-lars Novice
31. maj 2006 - 11:56 #1
Det er sådan set bare Excels måde at regne på, der giver de ekstra decimaler. Du kan undgå dem ved at skrive =AFRUND(-1363081,57+1420683;2).

Tallet 2 efter semikolon angiver, at resultatet skal gives med præcis 2 decimaler, 0 giver et heltal, -3 givet tallet i hele tusinder osv.
Avatar billede tida Juniormester
31. maj 2006 - 12:15 #2
Jeg er bekendt med AFRUND funktionen men er ikke interesseret i en formel i feltet, da det er et indtastningsfelt. Jeg bruger feltet i en efterfølgende bogføringsmakro og jeg modtager en fejl når feltet indholder mere en 2 decimaler. Spørgsmålet er nu om jeg kan undgå disse decimaler uden brug af formel.
Avatar billede falster Ekspert
31. maj 2006 - 13:57 #3
Kan du ikke bare kopiere og sætte ind. D.v.s. standard, som jo er "Sæt ind Alt" (Ctrl-V) i stedet for "Sæt ind Værdier"?

(Det var ellers et fint svar - formuleret som et spørgsmål :-))
Avatar billede tida Juniormester
31. maj 2006 - 15:08 #4
Det fjerne ikke de mange decimaler - Den eneste måde jeg kan klare problemet på er ved at have en celle ved siden af med AFRUND hvor jeg henter beløbet overi, og derefrer kan jeg så lægge beløbet tilbage i den originale celle ved at kopiere og indsætte som værdi inden jeg kører mig bogføringsmakro. Jeg syntes dog at der må være en lidt nemmere vej, jeg har mange af denne slags celler som jeg skal bogføre hver måned.
Avatar billede mrjh Novice
31. maj 2006 - 15:39 #5
Kan du så ikke bruge Round funktionen direkte i din VBA kode
Avatar billede falster Ekspert
31. maj 2006 - 15:47 #6
Dit eksempel giver i min Excel (2002) de mange decimaler, hvis jeg kopierer og vælger "Indsæt speciel..." - "Værdier". Almindelig kopiér og indsæt giver 57601,43.

Så det er lidt mystisk.
Avatar billede mrjh Novice
31. maj 2006 - 15:50 #7
Men hvis du forøger decimaler til f.eks 15, kan du se at den tager alle 9-tallerne
Avatar billede falster Ekspert
31. maj 2006 - 15:57 #8
mrjh: Nu forstår jeg, hvad du mener.

tida: Gemt i et fladt format - f.eks. csv - er decimalerne på plads. Men kan din makro/vba-kode kan bruge den?
Avatar billede tida Juniormester
31. maj 2006 - 16:26 #9
Hvordan skriver jeg AFRUND ind i makroen ?
Avatar billede mrjh Novice
31. maj 2006 - 16:35 #10
Ved at sætte værdien af din indtastningscelle = Round(Range("indtastningscelle"), 2)
Avatar billede tida Juniormester
06. juni 2006 - 13:32 #11
Ja men hvorledes indarbejder jeg det i en tasterobot med følgende henvisning til beløb, kan nogenhjælpe mig med det :

'Indsætter beløb fra regnearket til 5,15 i 2500 og trykker enter
    funcSendKeysViaRkKol Cells(i, 3), 5, 15
    funcSendKeys "[Enter]"
Avatar billede bak Forsker
06. juni 2006 - 14:54 #12
Hvis du ikke skal have så mange decimaler kunne du gå i Funktioner / Indstillinger på fanebladet Beregning og sætte flueben i Præsicion som vist. Dette vil permanent fjerne dem.
Avatar billede tida Juniormester
07. juni 2006 - 08:42 #13
Hvorfor gøre det kompliceret, når det kan løses simpelt. Perfekt bak - send lige et svar.
Avatar billede bak Forsker
07. juni 2006 - 09:28 #14
enig :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester