04. juni 2004 - 11:48Der er
21 kommentarer og 2 løsninger
Formatering af Excel makro importerede csv data (tal)
Når min makro importerer *.csv filen, ser tal således ud: ="0.87". Når jeg så kopiere og indsætte værdierne, ser det således ud: 0.87. Når jeg udskifter . med , og formaterer som tal (2 dec.), ser det rigtigt ud. Men makro kan ikke læse disse tal. En sammentælling giver resultat 0. Et godt bud ønskes Tak
Til martin moth og jpvj: Tak for forslagene, men jeg kan ikke se de løser problemet. Jeg bruger ikke , i VBA koden. Ved import af Excel.csv filen viser formellinie formatet: ="0.87". Derefter kopierer/indsætter jeg value, det giver formatet "0.87". Jeg koder en sum i bunden af kolonnen uden at definere ,/. i koden. Men summen bliver 0. Derfor prøvede jeg at søge/erstatte . med ,. Jeg får så det ejendommelige resultat, at jeg kan lægge tal i 2 kolonner sammen i kolonne 3 med koden: Activecell.FormulaR1C1 = "=RC[-1]+RC[-2]", men sum i bunden af kolonner er stadig 0, jeg anvender her koden: Range("F" & Activecell.Row).FormulaR1C1 = "=SUM(R[-" & nrk - rk & "]C:R[-1]C)". Hilsen
Har du tjekket at formlen det bliver indsat ser rigtig ud? Altså kontrolleret hvad der står i den celle, hvor du indsætter sumformlen - den er med 99% sikkerhed forkert!
Prøv derefter at indsætte sumformlen manuelt, uden brug af macro, og se om den også giver nul
Du er hurtig, dejligt. Jeg har tjekket begge dele, men med resultat sum 0. Formlen er rigtig, og når jeg laver den manuelt i cellen giver det også 0. Hilsen
Så er det eneste sted fejlen kan ligge i de enkelte celler der skal summeres. De indeholder åbenbart ikke tal.
Prøv at tag to tilfældige celler (af dem der summeres) og læg dem sammen manuelt (altså =A2+A3, hvis det er de to celler du vælger). Se om det giver noget.
Det er helt tydeligt, at fejlen må ligge i de celler du summerer, hvis du ellers er sikker på at sumformlen er korrekt.
SÅ tjek hver celle for sig - lad hver celle indgå i et regneudtryk, og se om det giver et rigtigt redultet - eller bare nul. Gang f.eks. hver celle med 10. Det burde være lige til at finde fejlen!
Summen vil blive 0 hvis excel fastholder tekstformatet Sæt et 1-tal i en tilfældig celle Kopier cellen Marker alle dine data Vælg Indsæt Speciel, klik i Multiplicer og OK
Nu bliver alle de data der er tekst, lavet om til værdi. Optag det evt. i en makro.
Hej med jer. Det her lyder spændende. Men hvordan multiplicerer jeg i forbindelse med indsæt speciel? Jeg kan sagtens markere Multiplicer, men hvordan fortæller med "1"? Hilsen
Først kopierer du cellen hvor der står et 1-tal i. når du så har markeret alle dine data og vælger Indsæt speciel, Multiplicer så ved excel at den skal multiplicere alle markerede celler med 1, istedet for at indsætte kopien i alle celler.
Hej med jer. Det her er en hård nød at knække. Jeres ide med at multiplicere virker fint, når jeg laver det manuelt i arket. Men når jeg afspiller det fra indspillet/kodet makro så virker det ikke. Men tak for jeres hjælp. Ideen med multiplikationsmetode er genial. Hilsen
Sub Text2Numbers() ' indsæt et 1-tal i tilfældig celle Range("AA1").FormulaR1C1 = "1" 'kopier cellen Range("AA1").Copy 'indsæt speciel, multiplicer Range("A1:A100").PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply, _ SkipBlanks:=False, Transpose:=False 'fjern 1- tallet igen Range("AA1").ClearContents End Sub
Hej. Jeg har løst problemet på en helt anden måde, jeg ved ikke hvorfor det virker, men det virker. Problemet opstod efter behandling af en større mængde data, som blev formateret og flyttet mellem flere regneark og faneblade. Jeg prøvede at vende sekvensen, så der importeres,kopiere/indsætte værdier og derefter med makro indsætte værdier fra hver enkelt celle til nye kolonner. Nu kan jeg sove roligt. Hilsen Henry
Vil du lige hjælpe mig, Martin, hvordan gør jeg det? Jeg har for et par dage siden klikket på Accepter-knappen, men jeg kan jo se at points stadig står åbne. Må jeg vende tilbage til dig i næste uge med et uddybende spørgsmål til automatisk filnavn? Hilsen Henry
Marker den bruger du vil tildele points. Tryk på accepter
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.