Hallo Forum Leser,
Ich habe ein kleines problem mit dem import von Daten aus einer Text Datei.
Wenn ich den Pfad und den Dateiname direkt in code schreibe funktioniert die trennung der Informationen in die einzelnen Spalten.
Hinterlege ich eine Variable im code, import er die Informationen aber nur noch in Spalte "A"
Die trennung ist "\" in der text datei.
Mit Debugger habe ich schon getestet und gesehen das die werte in der Varible gleich sind als ob ich sie direkt rein schreibe.
Ich sag schon mal vielen Dank an alle die sich mit dem problem beschäftigen :)
Sub Import()
Dim ImportDatei As String
Dim readfile As String
'file abfrage mit pfad
ImportDatei = Application.GetOpenFilename(FileFilter:="Text Files (*.txt), *.txt", Title:="Eine Datei auswählen")
'extrahierung des Filenamen
readfile = Right(ImportDatei, Len(ImportDatei) - InStrRev(ImportDatei, "\"))
' tabelle die beschrieben wird auswählen und alte daten löschen
Sheets("XXXX").Select
Cells.Select
Selection.ClearContents
Cells(1, 1).Select
'Daten import
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" + ImportDatei _ ' wenn ich hier denn pfad direkt hinterlege geht es
, Destination:=Range("A1"))
.Name = readfile ' wenn ich hier denn pDateinamen direkt hinterlege geht es
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 65001
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "\"
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 _
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
' zweite zeile wird gelöscht weil sie leer ist
Rows("2:2").Select
Selection.Delete Shift:=xlUp
End Sub
|