ich muss ewig viele csv Dateien zu einer Exceldatei zusammenfügen.
Dabei soll der Inhalt jeder Datei in einem eigenen Arbeitsblatt stehen.
Folgendes Makro habe ich gefunden:
Sub CSV_Import()
Dim dateien, i
Dim owkb As Workbook
dateien = Application.GetOpenFilename _
("csv-Dateien (*.csv), *.csv", MultiSelect:=True)
If IsArray(dateien) Then
For i = 1 To UBound(dateien)
Workbooks.Open dateien(i), local:=True
Set owkb = ActiveWorkbook
With ThisWorkbook
ActiveSheet.UsedRange.Copy
.Sheets.Add after:=.Sheets(.Sheets.Count)
.Sheets(.Sheets.Count).Name = owkb.Name
.Sheets(owkb.Name).Range("A1").PasteSpecial
End With
Application.CutCopyMode = False
owkb.Close False
Next i
End If
End Sub
Wenn ich dieses Makro ausführe, werden mir die Tabellenblätter angelegt, nur sind diese dann leer. Während das Makro arbeitet sieht man kurz die Inhalte "aufblitzen".Die csv Dateien sind so benannt:
0301150005.csv
0301150006.csv
u.s.w.
In jeder Datei ist ein Arbeitsblatt das den gleichen Namen wie die Datei hat.
Kann mir jemand schreiben was ich am Makro ändern muss, damit ich auch Inhalte in den Arbeitsblättern habe?
Vielen Dank
Micha