Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
816to820
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
816to820
816to820
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Tabellen konsolidieren

Tabellen konsolidieren
14.11.2006 16:20:40
Martin
Hallo, ich möchte ein Makro schreiben welches alle Tabellen aus mehreren Dateien in einer einzigen Excel Datei konsolidiert, die in einem Verzeichnis stehen. Es soll möglichst egal sein wieviele Dateien in dem Verzeichnis sind und wie sie heissen. Ich habe mir dazu ein Makro ausgedacht/modifiziert, aber leider bekomme ich immer eine Fehlermeldung: "Subscript out of Range". Kann mir jemand helfen? Ich vermute es hängt mit der drittletzen Zeile zusammen.
Vielen Dank!!!!

Sub KonsolidierenAlleDateien()
Dim Mappe As String
Dim i As Integer
Const LW = "F:\"
Const Pfad = "F:\VBA\"
ChDrive LW
ChDir Pfad
Application.SheetsInNewWorkbook = 1
Workbooks.Add
ActiveWorkbook.SaveAs ("F:\VBA\Konsolidierung.xls")
Mappe = Dir(Pfad & "*.xls")
ChDir Pfad
Do While Mappe <> ""
Workbooks.Open Mappe
For i = 1 To Workbooks(Mappe).Sheets.Count
Workbooks(Mappe).Sheets(i).Copy _
Before:=Workbooks("Konsolidierung.xls").Sheets(1)
Next i
Workbooks(Mappe).Close SaveChanges:=False
Mappe = Dir
Loop
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellen konsolidieren
14.11.2006 16:57:47
fcs
Hallo Martin,
dein Makro versucht die bereits geöffnete Datei "Konsolidierung.xls" in der schleife nochmals zu öffnen. Dadurch Fehler.
Passe die Schleife mit einer If-bedingung an, dann sollte es klappen.
Gruß
Franz

Sub KonsolidierenAlleDateien()
Dim Mappe As String
Dim i As Integer
Const LW = "F:\"
Const Pfad = "F:\VBA\"
ChDrive LW
ChDir Pfad
Application.SheetsInNewWorkbook = 1
Workbooks.Add
ActiveWorkbook.SaveAs ("F:\VBA\Konsolidierung.xls")
Mappe = Dir(Pfad & "*.xls")
ChDir Pfad
Do While Mappe <> ""
If InStr(1, LCase(Mappe), LCase("Konsolidierung.xls")) = 0 Then
Workbooks.Open Mappe
For i = 1 To Workbooks(Mappe).Sheets.Count
Workbooks(Mappe).Sheets(i).Copy _
Before:=Workbooks("Konsolidierung.xls").Sheets(1)
Next i
Workbooks(Mappe).Close SaveChanges:=False
End If
Mappe = Dir
Loop
End Sub


Anzeige
AW: Tabellen konsolidieren
14.11.2006 18:12:42
Martin
Klappt ausgezeichnet. Herzlichen Dank!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige