23. januar 2009 - 11:19Der er
8 kommentarer og 1 løsning
Brevflet med Excel
Hej, Jeg har et Worddokument som er flettet med et Excelark. I Excel arket har jeg både tekstfelter og nogle formelfelter, hvor det er værdien af formlen der skal flettes. Af en eller anden grund bliver 1,1 f.eks til 1,1000000000000001. Jeg har prøvet at afkorte og paste værdierne, så der kun står 1,1 og hverken mere eller mindre, alligevel bliver det til 1,1000000000000001 i Word. Umiddelbart kan jeg ikke se at jeg nogensteder kan få Word til at mindske antal decimaler, som kunne løse problemet. Selvom jeg nu gerne ville vide hvorfor 1,1 kan blive til andet end 1,1. Jeg forstår heller ikke hvorfor telefonnumre eks står helt fint. Nogen bud?
Teknologi, AI og forretning er i centrum på Computerworlds Cloud og AI Festival i København d. 18. og 19. september. Se hele programmet for den store konference om strategisk brug af Cloud og AI på: www.cloud-festival.dk
Det må være en form for afrundnings/konverteringsfejl. Du kan i Word indsætte formatteringskoder: marker flettefeltet, tryk alt+f9 og indsæt \# 0,00x i linjen, tryk alt+f9 igen Du kan læse mere om formattering i hjælpen til word (Anvende formatering på data, der er indsat af felter)
Problemet opstår fordi OLE2, som anvendes til brevfletning, ikke henter formatet med fra Excel til Word, men kun de "rå" data. I Excel kan 1,1 sagtens være 1,1000000000000001 selv om det vises som 1,1. Og trækker du to tal fra hinanden, kan det interne resultat i Excel også blive et andet end det viste. Det skyldes, at det binære talsystem ikke kender til brøker, og deror kan der opstå afvigelser, når der er decimaler. Prøv fx at indtaste =81/10 i en celle. I cellen under skriver du 7. Træk så de to celler fra hinanden. Nu får du 1,1. Øg antallet af decimaler til 16. Resultatet er nu 1,10000000000000000. Ret så 7 til 8 og se, hvad der sker.
Det er sådan nogle ting der irriterer og undrer, men eftersom jeg ikke vidste det, har det jo nok ikke nogen praktisk betydning. Vi kan så håbe NASA ikke bruger Excel hvor de sidste decimaler sikkert har større betydning.
Det undrer nu alligevel at Excel skriver 1,1000000000000000000000, men Word "stædigt" fastholder at der skal stå 1,1000000000000001, når nu jeg har copy pasted det som en værdi.
Men skidt det virker med formateringskoden. Nu kan i så se om i kan hjælpe med at lave grafer ud fra de tal...
falster-> DDE metoden er givetcvis den nemmeste, og den løser problemerne. Ti lgenmgæld er det irriterende at skulle gennem bekræftelsesproceduren i de tilfælde, hvor det ikkke er nødvendigt :-)
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.