Avatar billede jensnielsen Nybegynder
08. august 2002 - 18:18 Der er 3 kommentarer og
1 løsning

danske tegn fra access til tekstfil

Hej

Jeg har et problem: Jeg har en tabel med navne på dansk, inkl. æøå. Jeg skal generere en .reg fil hvor navnet skal indgå - det går fint, altså bortset fra de danske tegn!

Jeg bruger følgende kode, knyttet til en kommandoknap:

Dim x
Dim y
Dim nogle
Dim v
Dim apo
apo = Chr$(34)
x = [Forms]![vælg Placering]![Tekst2]
y = "REGEDIT4"
nogle= "[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]"
v = "Comment"
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\placering.reg", True)
a.WriteLine (y)
a.WriteLine
a.WriteLine (nogle)
a.WriteLine (apo & v & apo & "=" & apo & x & apo)
a.Close
Shell ("c:\windows\regedit.exe /s c:\placering.reg")

egentlig meget enkelt - men hvordan pokker får jeg de danske tegn rigtige?

Jens Nielsen
Avatar billede hugopedersen Nybegynder
09. august 2002 - 08:34 #1
Jeg har en funktion her der gør der den anden vej ( DOS til Windows )
Måske kan du nemt lige vende den.

Public Function fhpConvertFromDOS(strConvString As String) As String
' -----------------------------------------------------------------------------------
' Purpose      : Converts Danish DOS chars to Windows
' Called from  :
' Returns      :
' Remarks      :
' -----------------------------------------------------------------------------------
  Dim x As Integer
 
  strConvString = RTrim$(strConvString)
  strConvString = LTrim$(strConvString)
  For x = 1 To Len(strConvString)
    If Mid$(strConvString, x, 1) = Chr$(155) Then                      'DOS karakter for ø
      Mid$(strConvString, x, 1) = "ø"
    End If
  Next x
  For x = 1 To Len(strConvString)
    If Mid$(strConvString, x, 1) = Chr$(157) Then                      'DOS karakter for Ø
      Mid$(strConvString, x, 1) = "Ø"
    End If
  Next x
 
  For x = 1 To Len(strConvString)
    If Mid$(strConvString, x, 1) = Chr$(145) Then                      'DOS karakter for æ
      Mid$(strConvString, x, 1) = "æ"
    End If
  Next x
  For x = 1 To Len(strConvString)
    If Mid$(strConvString, x, 1) = Chr$(146) Then                      'DOS karakter for Æ
      Mid$(strConvString, x, 1) = "Æ"
    End If
  Next x
 
  For x = 1 To Len(strConvString)
    If Mid$(strConvString, x, 1) = Chr$(134) Then                      'DOS karakter for å
      Mid$(strConvString, x, 1) = "å"
    End If
  Next x
  For x = 1 To Len(strConvString)
    If Mid$(strConvString, x, 1) = Chr$(143) Then                      'DOS karakter for Å
      Mid$(strConvString, x, 1) = "Å"
    End If
  Next x
 
  fhpConvertFromDOS = strConvString

End Function


PS.  Hvorfor skriver du ikke direkte i registreringsdatabasen ?
Avatar billede hugopedersen Nybegynder
12. august 2002 - 06:50 #2
Havde du ikke accepteret dette en gang ?
Der sker sommetider noget sjovt her på sitet :-)
Avatar billede jensnielsen Nybegynder
12. august 2002 - 08:55 #3
Joh, men det var ret svært at komme i kontakt med sitet i fredags.
Avatar billede hugopedersen Nybegynder
12. august 2002 - 09:22 #4
Sådan kan det gå :-)
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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