10. oktober 2007 - 13:03Der er
7 kommentarer og 1 løsning
Excel gætter format
Hvordan angiver man i sin VBA kode, at Excel ikke skal "gætte" hvilket format et givet output har?
Har et ark hvor nogle af tallene er i % andre er i en valuta, og enkelte er bare et indekstal (altså uden benævnelse) - når jeg kører koden, kan excel finde på at give dem % betegnelsen HELT uden grund (og fjerne decimalerne) :/
Den laver faktisk i bund og grund lidt mærkelige ting med de tal jeg får skrevet ud :(
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
Med output mener du så de værdier du gemmer i celler fra VBA, hvis du ønsker at gemme dem uden format, skal du gemme dem i value2. altså Range("A1").value2 = værdi
Udtrykte mig nok lidt ringe, men jeg har et excelark, hvori der kører en masse vba, en del af den vba henter specificeret data fra et ark, og kopierer dem over i et andet ark - alt afhæning af hvad der i source-arket, skal den skrive "dkr" "%" osv efter tallet i output arket. Enkelte af tallene fra source arket er index tal, og har derfor ingen benævnelse, men efter kørt kode, kan excel stadig finde på at give dem det. Hertil har jeg ingen idé om hvorfor?!?!
umiddelbart tro jeg det er din kode der gør det. Gør den også hvis hentes frem senere? Excel sætter formatter efter hvilken type variabel der ligges i cellen. prøv evt. at komme med noget af koden
Jeg kan med garanti sige, at det ikke er koden (altså noget jeg har skrevet). Har kørt den 100% trinvis, og det er altså super mærkeligt. Lad os bare lege, at ark1 ser sådan ud
her kan den finde på, at smide et procenttegn efter de to midterste tal, eller endda fjerne kommaet, så tallet bliver langt større. Har no clue hvor den skulle have den idé fra, da jeg blot kopiere de to celler sammen (der laves en masse tjek, på hvilke celler der er tale om), og derfor skal jeg enten smide 50 sider kode ind, eller blot prøve at høre, om folk har prøvet noget lignende.
Grunden til at jeg tror, at Excel "gætter" format, er når man arbejder i ark, og kører en kolonne med % tal, og så har et tal uden %, så skriver den automatisk % bagved til tider...
Fx, skriver man [A] 10% 5% 2%
skriver man blot "4" i den næste celle, så skriver Excel "4%" - tror det er der fejlen ligger!
Jeg tror hvis du formatter dine celler til tekster før du ligger værdier i dem, løser det problemet. Når formattet er general, kan excel selv skifte formattet.
evt. med koden: Range("A1:H22").Select Selection.NumberFormat = "@"
Det virkede lige efter hensigten, er dog stadig irriteret over at Excel på den måde bare laver "auto-formatering" uden at blive spurgt :/
Synes godt om
Ny brugerNybegynder
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.