Datenimport aus verschiedener txt-files
22.10.2008 15:11:00
günther
Also d.h. den Inhalt der ersten Datei importieren ab Zelle A3,
nach dem Inhalt der ersten Datei, 2-3 Leerzeilen,
darunter der Inhalt von Datei 2,
usw. bis datei 108 (die 65536 verfügbaren Zeilen reichen locker aus.)
hab hier mal den Code zum Import der ersten Datei
Sub Makro2()
' Makro2 Makro
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\1\G-1.txt", _
Destination:=ActiveCell)
.Name = "G-1"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = True
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = False
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1252
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(2, 2, 2, 2, 2, 2, 2, 2, 2, 2)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
End Sub
Dieser Code zum Öffnender Datein, den ich hier im Forum fand, funktioniert gut, erstelt aber für jede Textdatei ein eigenees Tabellenblatt. Ich bräuchte aber den Inhalt aller txt-files auf einem Tabellenblatt, um mit Filter arbeiten zu können.
Sub Alle_Textdateien()
strExt = "*.txt" 'Dateiextension ggf. anpassen
ZuÖffnendeDatei = Application.GetOpenFilename("Textdateien (" & strExt & "), " & strExt, _
Title:="Verzeichnisauswahl, erste Datei auswählen")
If ZuÖffnendeDatei = False Then Exit Sub
'Die ausgewählte Datei ist egal. es wird hier nur das Verzeichnis der Datei ausgewertet
strPath = CurDir & "\"
If strPath = "" Then
Exit Sub
Else
ChDir strPath
strFile = Dir(strPath & strExt) 'hier wird die erste Datei gefunden
Do While Len(strFile) > 0
Workbooks.OpenText Filename:=strPath & strFile, DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, _
Tab:=True, Semicolon:=False, Comma:=False, _
Space:=True, Other:=False, trailingMinusNumbers:=True
Sheets(1).Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
'...weiter mit Änderungen an der Tabelle
strFile = Dir() ' nächste Datei
Loop
End If
End Sub
wäre schön, wenn jemand Rat weiß