Avatar billede puller Nybegynder
16. februar 2001 - 14:33 Der er 8 kommentarer og
1 løsning

Komma istedet for punktum

Hejsa,

jeg har et lille problem, det program jeg har fået lavet, sætter punktum i tallene istedet for komma, hvordan løser jeg det!

Private Sub Command1_Click()

Dim data(16), linie As String
Dim a As Integer
Dim Filnavn1 As String
Dim Filnavn As String
On Error GoTo err:
Filnavn = Text1.Text
Filnavn1 = \"c:\\dokumenter\\mm.txt\"
Open Filnavn For Input As #1
Open Filnavn1 For Output As #2
  Do Until EOF(1)
    For a = 0 To 15
        If EOF(1) Then Exit For \' <-  indsæt
          Line Input #1, data(a)
          If data(a) = \"GROUP 00008000\" Then a = \"1\"
        \'  End If
          If data(a) = \"END GROUP\" Then a = \"0\"
           
         
    Next

   
    linie = (data(1))                    \'første data - i eksemplet: 1
       
    For a = 2 To 14                          \'komma og følgende data
       
      linie = linie & \";\" & (data(a))    \'Med valør (val) undgår du \" \" om tallene.
 
    Next
    Print #2, linie                              \'strengen linie skrives til ud-filen
    linie = \"\"                                    \'strengen linie tømmes for indhold
  Loop
Close #1
Close #2

 
err:
    If err.Number = 53 Then
    MsgBox \"Error:\" & vbCrLf & \"Du skal indtaste den rigtige sti eller det rigtige fil navn\", vbExclamation
    End If
    If err.Number = 0 Then
    MsgBox \"OK:\" & vbCrLf & \"Konverteringen gik fint\"
    Else
    MsgBox \"Error:\" & vbCrLf & err.Description & vbCrLf & err.Number, vbExclamation
    End If
   
    Exit Sub
End Sub

Det var sådan programmet ser ud!
Avatar billede wisen Nybegynder
16. februar 2001 - 14:37 #1
Er din maskine sat op til danske regionalindstillinger ? Kontrolpanel->regional
Avatar billede puller Nybegynder
16. februar 2001 - 14:40 #2
Lige præcis det du siger der kan jeg ikke finde. Men er det inde under internationale indstillinger jeg skal kigge? Og hvad er det der skal være sat op således? Data\'ene vi snakker om er: fx. 8.68 & 4.30 & 12.80
Avatar billede wisen Nybegynder
16. februar 2001 - 14:42 #3
Ja, nu er jeg ikke vil VB-professionel, men jeg har selv være ude for at konverteringer gik galt på grund af, at maskinen var sat forkert op. Men ja, det er under internationale indstillinger... Det er mit bedste bud :|
Avatar billede puller Nybegynder
16. februar 2001 - 14:43 #4
Men er det tusindtal separator eller hvad?
Avatar billede wisen Nybegynder
16. februar 2001 - 14:44 #5
Jep, det var i hvertfald løsningen på mit problem i sin tid...
Avatar billede tdaugaard Nybegynder
16. februar 2001 - 15:36 #6
Hvis du bruger FormatNumber() til at lave digit grouping osv. så kommer det, som wisen indirekte siger, til at være i det format som den maskine programmet afvikles på, er sat op til.
Avatar billede f2 Nybegynder
22. februar 2001 - 13:49 #7
Hvis du i dit output vil have det med komma så er her et lille eksempel (det skulle gerne virke):

Dim tal As Double, outp, I
tal = 4 + 3.5
outp = tal
For I = 1 To Len(outp)
If Mid(outp, I, 1) = \".\" Then
outp = Left(outp, I - 1) & \",\" & Right(outp, Len(outp) - I - 1)
End If
Next
MsgBox outp
Avatar billede puller Nybegynder
22. februar 2001 - 13:55 #8
Man kunne også gøre det med denne her metode!

Public Function skifttal(value As Variant) As Variant
    skifttal = Replace(value, \".\", \",\")
    skift = skifttal
    linie = skift
End Function


Ganske simpelt!
Avatar billede f2 Nybegynder
22. februar 2001 - 14:03 #9
ok.. det var i VB 6.0..
det er fordi at jeg bruger 5.0 !
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