Avatar billede warberg78 Nybegynder
24. marts 2009 - 20:51 Der er 6 kommentarer

Ændre 0,00 til 0.00 for data som skal gemmes som tekst

Jeg har en kode som gemmer et ark som en txt fil, men problemet er at det program som skal importere filen kun acceptere punktum som decimal-separator.

Den eneste måde som indtil videre har været at søge og erstat med excels egen funktion, men det skal gøres via en kode og jeg har forsøgt en del løsninger som ses herunder, men uden held med en eneste af dem.


1. Optaget makro:

Worksheets("Opsummering").Range("S1:S150").Select
Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False



2. "Substitute" makro:

Dim antal As Range

For Each antal In Worksheets("Opsummering").Range("s1:s150")

    If antal = "" Then GoTo slut
             

    antal = Application.WorksheetFunction.Substitute(antal.Value, ",", ".")

slut:

Next antal

End Sub



3. Numberformat makro:

Worksheets("Opsummering").Range("s1:s150").Select
             
Selection.NumberFormat = "###0.00"


Jeg vil klart helst undgå at bruge "selection", men det skal simpelthen bare virke med en form for kode

På forhånd tak
Avatar billede supertekst Ekspert
24. marts 2009 - 23:12 #1
Er dette noget du kan anvende:

Sub test2()
    For Each celle In Worksheets("Opsummering").Range("S1:S150").Cells
        If celle = "" Then
            Exit For
        Else
            celle.Value = Replace(celle, ",", ".")
        End If
    Next celle
End Sub
Avatar billede warberg78 Nybegynder
24. marts 2009 - 23:32 #2
Jeg troede virkelig du havde reddet min aften "supertekst", efter at have googlet i en 3-4 timer efter en løsning, men dit forslag virker desværre ikke umiddelbart.

Det virker somom at excel "overruler" alt i denne sammenhæng og ikke vil går væk fra komma som decimal-separator, men kan man evt lave værdierne for hvert felt om til tekst, splitte teksten ad i atomer og derefter indsætte et punktum i stedet for det "trælse" komma?

Jeg er dog ikke selv så skrap i deciplinen med at brunge len, left, right, mid osv. så kom gerne med et bud

PS. jeg bruger Excel 2007 hvis det gør nogen forskel
Avatar billede supertekst Ekspert
25. marts 2009 - 08:59 #3
Jeg anvender 2003-versionen

Alternativt kunne være at ændre i tekstfilen.
Avatar billede mikker Nybegynder
27. marts 2009 - 12:10 #4
Lav cellens formatering om til tekst inden du substituerer ?
Avatar billede warberg78 Nybegynder
27. marts 2009 - 12:19 #5
Tak for de gode bud men jeg har faktisk opgivet og i stedet for at kopiere data fra et ark til et andet (hvorved den lavede "." om til ",") så har jeg istedet for bare lavet cellehenvisninger, hvorved den godt kan acceptere "." og derefter bare låst og skjult arket, hvorfra den laver tekstfilen
Avatar billede warberg78 Nybegynder
27. marts 2009 - 12:21 #6
Vil gerne give points til supertekst for det gode bud, så kom endelig med et svar
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
Kurser inden for grundlæggende programmering

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