Txt mit wechselnden Namen einlesen.
17.02.2015 11:32:16
Chris
Dank Euch lerne ich langsam aber stetig die VBA-Programmierung... Danke dafür :)
Nun hänge ich an einem vielleicht kleinen Problem, was ich aber einfach nicht gelöst bekomme.
Folgendes Szenario: Ich habe mir eine Excel Datei gebastelt mit Makros und eigenem VBA Code. Diese läuft tadellos. Jetzt möchte ich gerne das aus einem Ordner (dort liegt immer nur eine txt datei) die dort liegende Datei eingelesen wird. Der Name ist immer verschieden.
Aktuell:
Sub Txt_Einlesen_01()
' Txt_Einlesen_01 Makro
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;C:\Users\\Desktop\test\warmerregen.txt", Destination:= _
Range("$K$1"))
.Name = "warmerregen.txt"
.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 = xlFixedWidth
.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)
.TextFileFixedColumnWidths = Array(6, 8, 20, 40, 20, 20, 20, 20, 6, 20)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
End Sub
Zusätzlich wird am Ende in Makro/VBA-Code Nr. 5 eine CSV erstellt. Kann ich es hier irgendwie schaffen, das der Name der erzeugten CSV datei gleich der Einlesenden Txt Datei ist? Sprich Eingabe txt name = Ausgabe csv name. Aktuell
Sub CSV_erstellen_05()
' CSV_erstellen_05 Makro
ChDir "C:\Users\\Desktop\test\Ausgabe_CSV"
ActiveWorkbook.SaveAs Filename:= _
"C:\Users\\Desktop\test\Ausgabe_CSV\AUSGABE.csv", _
FileFormat:=xlCSV, CreateBackup:=False, Local:=True
Cells.Select
Range("C1").Activate
Selection.ClearContents
Range("C1").Select
ChDir "C:\Users\\Desktop\test"
ActiveWorkbook.SaveAs Filename:= _
"C:\Users\Desktop\test\Eingabe.xlsm", FileFormat:= _
xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
End Sub
Ich hoffe das es einigermaßen verständlich ist. Wieder mal vielen Dank O=)