Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1132to1136
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

TXT - Dateien aus Verz. kopieren und zus.fassen

TXT - Dateien aus Verz. kopieren und zus.fassen
brend
Hallo Freaks,
ich habe x - viele Dateien im txt - Format (Text tabstopp-getrennt) in einem Verzeichnis liegen. Alle Dateien weisen den gleichen Aufbau auf (Format, Zeilen, Spalten). Der einzige Unterschied ist der Zellinhalt (Wert) und der Dateiname.
konkretes Beispiel:
https://www.herber.de/bbs/user/67559.txt
Diese x-vielen Dateien sollen alle in einem einzigen Arbeitsblatt zusammenkopiert werden.
Geht das mit txt denn überhaupt - soll heißen - zusammenfassen und das txt.-Format dabei beibehalten?
Wenn das nicht geht, könnten auch den txt-Dateien zugrundeliegenden Excel-Dateien ausgelesen und zusammengefasst werden.
Es gibt diese Bsp. aus dem Forum. Das kann ich aber nicht anpassen...
https://www.herber.de/bbs/user/65326.xls
Bitte Euch um Hilfe.
Grüé
Brend

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: TXT - Dateien aus Verz. kopieren und zus.fassen
27.01.2010 19:15:49
Tino
Hallo,
kannst mal diesen Code testen.
Erst werden alle Textdateien zu einer zusammenkopiert,
danach wird diese über QueryTables eingelesen und zum Schluss diese Datei wieder gelöscht.
Den Pfad und die Tabelle wo die Daten hin sollen müsstest Du noch anpassen.
kommt als Code in Modul1
Option Explicit 
 
Sub Test() 
Dim Quelle$, ZielAll$ 
Dim i As Integer 
 
Quelle = "C:\Meine Textdateien\" 'Pfad anpassen 
ZielAll = "AllTXT.txt"           'tempName 
 
ChDrive Left$(Quelle, 2) 
ChDir Quelle 
 
Shell "cmd.exe /c copy *.txt " & ZielAll, vbHide ' & ZielAll 
 
'Maximal 10 Sekunden warten 
Do While Dir(Quelle & ZielAll) = "" And i <= 10 
    DoEvents 
    Application.Wait Now + TimeSerial(0, 0, 1) 
    i = i + 1 
Loop 
 
If Dir(Quelle & ZielAll) = "" Then Exit Sub 
'Text Datei einlesen, 1. Parameter Tabelle, 2. File 
LeseTxtFile Tabelle1, Quelle & ZielAll 
'Datei wieder löschen 
Kill Quelle & ZielAll 
End Sub 
kommt als Code in Modul2
Option Explicit 
 
Sub LeseTxtFile(oSh As Worksheet, strPfad$) 
Dim oQuery As QueryTable 
oSh.UsedRange.Clear 
    With oSh.QueryTables.Add(Connection:= _
        "TEXT;" & strPfad, Destination:=Range("$A$1")) 
        .Name = "All" 
        .FieldNames = True 
        .RowNumbers = False 
        .FillAdjacentFormulas = False 
        .PreserveFormatting = True 
        .RefreshOnFileOpen = False 
        .RefreshStyle = xlInsertDeleteCells 
        .SavePassword = False 
        .SaveData = True 
        .AdjustColumnWidth = True 
        .RefreshPeriod = 0 
        .TextFilePromptOnRefresh = False 
        .TextFilePlatform = 850 
        .TextFileStartRow = 1 
        .TextFileParseType = xlDelimited 
        .TextFileTextQualifier = xlTextQualifierDoubleQuote 
        .TextFileConsecutiveDelimiter = False 
        .TextFileTabDelimiter = True 
        .TextFileSemicolonDelimiter = False 
        .TextFileCommaDelimiter = False 
        .TextFileSpaceDelimiter = False 
        .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) 
        .TextFileTrailingMinusNumbers = True 
        .Refresh BackgroundQuery:=False 
    End With 
 
For Each oQuery In oSh.QueryTables 
 oQuery.Delete 
Next oQuery 
End Sub 
Gruß Tino
Anzeige
@ Tino: Du bist der Größte! Danke!
27.01.2010 22:30:12
brend
Hallo Tino,
funktioniert perfekt. Vielen Dank dafür. Du hast mir damit sehr geholfen.
Super. Danke!
Grüße
brend
eher nicht bin 1,72m groß, mehr nicht ;-) oT.
28.01.2010 08:11:14
Tino

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige