Supportnet / Forum / Tabellenkalkulation
50 Dateien zu einer zusammenfassen
Frage
Hallo,
ich habe in einem Ordner 50 Dareien, die alle nur ein Tabellenblatt enthalten. Gibt es einen einfachen und schnellen Weg diese alle in einer Datei zu vereinen?
Vielen Dank im Voraus
Wolfgang H.
Antwort 1 von nighty
hi all :-)
hier ein beispiel
gruss nighty
eine unbestimmte anzahl von dateien wird aus einem angegebenen verzeichnis gelesen
das erste tabellenblatt abgetastet auf zeilen und spaltenende
die so erfassten daten werden in worksheet(1) wieder dargestellt bzw an das ende rangehangen
keine fehlerroutine preasent bei ueberschreitung des zeilenendes
hier ein beispiel
gruss nighty
eine unbestimmte anzahl von dateien wird aus einem angegebenen verzeichnis gelesen
das erste tabellenblatt abgetastet auf zeilen und spaltenende
die so erfassten daten werden in worksheet(1) wieder dargestellt bzw an das ende rangehangen
keine fehlerroutine preasent bei ueberschreitung des zeilenendes
Sub FilesListen()
Call EventsOff
Dim Dateien As Integer
Dim DateiName As String
With Application.FileSearch
.NewSearch
.LookIn = "D:\Temp\"
.Filename = "*.xls"
If .Execute() > 0 Then
For Dateien = 1 To .FoundFiles.Count
DateiName = Dir(.FoundFiles(Dateien))
If DateiName <> ThisWorkbook.Name Then
Workbooks.Open Filename:=.FoundFiles(Dateien)
Workbooks(DateiName).Sheets(1).Range(Workbooks(DateiName).Sheets(1).Cells(2, 2), Workbooks(DateiName).Sheets(1).Cells(Workbooks(DateiName).Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row, Workbooks(DateiName).Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Column)).Copy ThisWorkbook.Sheets("1").Range("A" & ThisWorkbook.Sheets("1").UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1)
Workbooks(DateiName).Close SaveChanges:=True
End If
Next Dateien
End If
End With
Call EventsOn
End Sub
Public Sub EventsOff()
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
End Sub
Public Sub EventsOn()
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
End SubAntwort 2 von nighty
hi all :-)
ups
die 2,2 sollte angepasst werden fuer den kopiervorgang,zeile spalte heisst es, zeile 2 nahm ich wegen eventueller ueberschriften spalte 2 sollte auf 1 korrigiert werden
so ist das ohne testen grrr
DateiName).Sheets(1).Cells(2, 2), Workbooks(
ups
die 2,2 sollte angepasst werden fuer den kopiervorgang,zeile spalte heisst es, zeile 2 nahm ich wegen eventueller ueberschriften spalte 2 sollte auf 1 korrigiert werden
so ist das ohne testen grrr
DateiName).Sheets(1).Cells(2, 2), Workbooks(
Antwort 3 von woherh
Hallo,
es ist mir leider mal wieder nicht gelungen eine Frage so zu stellen, das sie auf Anhieb verstanden wird. Pardon.
Die Dateien heißen "jw 01" bis "jw 53", jede dieser 53 Dateien enthält nur ein Tabellenblatt, das genau so heißt wie die Datei. Ich möchte in der Datei "jw xy" nun Kopien dieser 53 Tabellenblätter erstellen.
Vielen Dank im Voraus
mfg
Wolfgang H
es ist mir leider mal wieder nicht gelungen eine Frage so zu stellen, das sie auf Anhieb verstanden wird. Pardon.
Die Dateien heißen "jw 01" bis "jw 53", jede dieser 53 Dateien enthält nur ein Tabellenblatt, das genau so heißt wie die Datei. Ich möchte in der Datei "jw xy" nun Kopien dieser 53 Tabellenblätter erstellen.
Vielen Dank im Voraus
mfg
Wolfgang H
Antwort 4 von nighty
hi all :-)
bin jetzt mit umzug beschaeftigt und bisl wenig zeit jetzt,koennen andere member hilfreich sein ?
gruss nighty
bin jetzt mit umzug beschaeftigt und bisl wenig zeit jetzt,koennen andere member hilfreich sein ?
gruss nighty

