Herbers Excel-Forum - das Archiv

Text einlesen

Bild

Betrifft: Text einlesen
von: haw

Geschrieben am: 20.12.2006 09:38:33
Hallo Excelfreunde
ich lese Textdateien mit Open Datei For Input As #1 ein.
Es funktioniert auch alles wunderbar, nur die Sonderzeichen (Umlaute und ß) werden falsch gelesen. Kann man das ändern, wenn ja, wie?
Gruß Heinz
Bild

Betrifft: AW: Text einlesen
von: Matthias G
Geschrieben am: 20.12.2006 10:23:37
Hallo Heinz,
wenn du die Textdatei mit dem Editor öffnest, sind die Umlaute also korrekt?
Ich denke nämlich, es liegt an der Zeichentabelle (z.B. DOS-Zeichensatz).
Gruß Matthias
Bild

Betrifft: AW: Text einlesen
von: haw
Geschrieben am: 20.12.2006 10:30:15
Hallo Matthias,
danke für deine Antwort.
Nein, sie sind auch im Editor nicht korrekt. Anstatt der Umlaute steht ein schwarzer Block.
Gruß Heinz
Bild

Betrifft: AW: Text einlesen
von: Matthias G
Geschrieben am: 20.12.2006 10:35:50
Hallo Heinz,
woher bekommst du denn die Textdatei? Die einfachste Lösung wäre nämlich, den Export entsprechend anzupassen. Wenn das nicht geht, verwende die Replace-Funktion.
Gruß Matthias
Bild

Betrifft: AW: Text einlesen
von: haw
Geschrieben am: 20.12.2006 10:39:07
Hallo Matthias,
der Export erfolgt aus einem großen Lohnprogramm, da habe ich leider keine Möglichkeit.
Dann werde ich es mit REplace korrigieren.
Vielen Dank.
Gruß Heinz
Bild

Betrifft: AW: Text einlesen
von: haw

Geschrieben am: 20.12.2006 11:18:32
Hallo Matthias,
hier "meine" Lösung, für den Fall, dass das sonst noch jemand interessiert:
Option Explicit
Private Declare
Function OemToCharA Lib "user32.dll" (ByVal _
lpszSrc As String, ByVal lpszDst As String) As Long
Private Declare 
Function CharToOemA Lib "user32.dll" (ByVal _
lpszSrc As String, ByVal lpszDst As String) As Long
Public 
Function ASCII2ANSI(ByVal Text As String) As String
Call OemToCharA(Text, Text)
ASCII2ANSI = Text
End Function

Public
Function ANSI2ASCII(ByVal Text As String) As String
Call CharToOemA(Text, Text)
ANSI2ASCII = Text
End Function

Mit diesen Funktionen kann man Texte von ASCII zu ANSI und umgekehrt umwandeln.
Den Code habe ich aus diesem Forum. Nochmals herzlichen Dank dem Autor.
Auch dir ein Frohes Fest und ein besseres Jahr als es das vergangene war!
Gruß Heinz
 Bild
Excel-Beispiele zum Thema "Text einlesen"
Tabellenblattnamen in ein Listenfeld einlesen Gefilterte Daten in eine ListBox einlesen
Einlesen von Zellinhalten in Variablen 1000 Arbeitsblätter aus 1000 Arbeitsmappen einlesen
Tabellenblattnamen in eine ListBox einlesen Text aus UserForm-Textbox in Variable einlesen
Blätter in ComboBox-Feld einlesen und auswählen Dateinamen in Tabelle einlesen
Namen einer Arbeitsmappe einlesen