Daten mehrerer Blätter in ein Gesamtblatt kopieren

Bild

Betrifft: Daten mehrerer Blätter in ein Gesamtblatt kopieren
von: Matthias
Geschrieben am: 19.04.2005 12:42:48
Hallo,
ich habe mehrere Dateien mit je einem Tabellenblatt. Alle sind genau gleich aufgebaut. Eine davon ist die Übersichtstabelle.
Jetzt sollen die Daten (nur die gefüllten Zeilen) jedes einzelnen Blattes der Reihe nach abgefragt und in die Übersichtstabelle kopiert werden.
Bedingungen/Anmerkungen:
- der Kopf (Zeile 1+2) ist überall gleich und bleibt "unberührt"
- die Anzahl der zu kopierenden Zeilen aus den Einzelblättern ist unterschiedlich
- zwischen jedem "Block" (=Daten eines Einzelblattes) sollte eine Leerzeile eingefügt werden
- Die Tabellen haben in den Spalten A+B nur Text stehen, die Spalten C bis BN sind 'leer', aber mit unterschiedlichen Farben (Füllfarbe) markiert. Alles, Text und Füllfarben müssen übernommen werden.
Hat jemand einen Lösungsvorschlag?
Schon mal besten Dank!
Matthias

Bild

Betrifft: AW: Daten mehrerer Blätter in ein Gesamtblatt kopieren
von: Dani
Geschrieben am: 19.04.2005 14:25:32
Hallo Matthias,
die folgende Prozedur könnte als Ansatz dienen:


      
Sub Dataextract()
Dim Listenlänge, i, z As Long
Dim Pfad, File As String
Pfad = "C:\Suchpfad eingeben...\"
File = Dir(Pfad)
z = 3
Do
    
If Not File = "Übersicht.xls" Then
        Workbooks.Open Pfad & File
        Listenlänge = Workbooks(File).Worksheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).Row 
'Spalte A länge ermitteln
        Workbooks(1).Worksheets("Tabelle1").Activate
        Workbooks(File).Worksheets("Tabelle1").Range("A3:BN" & Listenlänge).Copy Destination:=ThisWorkbook.Worksheets("Tabelle1").Range("a" & z)
        z = z + Listenlänge - 1
        Workbooks(File).Close SaveChanges:=
False
    
End If
    File = Dir()
Loop Until File = ""
End Sub 

     Code eingefügt mit Syntaxhighlighter 3.0

Du musst dazu die zu extraktierenden Files in einen gemeinsamen Ordner verschieben und dieses Makro starten. Ich hoffe das hilft dir.
Gruss Dani
Bild

Betrifft: AW: Daten mehrerer Blätter in ein Gesamtblatt kopieren
von: Matthias
Geschrieben am: 20.04.2005 06:44:52
Hallo Dani,
besten Dank für Deine Hilfe!!! Es funktioniert genauso, wie ich es mir vorstellte!
Aber: es gibt noch einen kleinen "Schönheitsfehler":
Nach dem Einlesen der Daten in die Übersichtsliste werden die Daten der Einzellisten immer wieder angepasst/verändert/ergänzt. Wenn jetzt das Makro ein 2.Mal gestartet wird, kommen die Daten in der Übersichtsliste etwas "durcheinander", z.T. mit Doppeleinträgen.
Am besten wäre es, die Daten in der Übersichtsliste zunächst komplett zu löschen (ausser dem Kopf Zeile 1+2) und dann neu einzulesen.
Wie kann ich das in Deinem Makro noch einbauen?
Gruss
Matthias
Bild

Betrifft: AW: Daten mehrerer Blätter in ein Gesamtblatt kopieren
von: Dani
Geschrieben am: 20.04.2005 13:18:36
Hallo Matthias,
füg mal folgenden Code direkt nach der Variablendekaration in die Sub ein:
Listenlänge = Cells(Rows.Count, 1).End(xlUp).Row
Range("A3:BN" & Listenlänge).Cut

Damit sollten die alten Einträge verschwinden.
Gruss
Dani
Bild

Betrifft: AW: Daten mehrerer Blätter in ein Gesamtblatt kopieren
von: Matthias
Geschrieben am: 20.04.2005 15:26:47
Danke Dani, werde dies noch ausprobieren. Bin aber erst am Freitag wieder im Büro, wo ich die Dateien habe. Ich geb' danach nochmals Bescheid, ob es geklappt hat....
Gruss
Matthias
Bild

Betrifft: AW: Daten mehrerer Blätter in ein Gesamtblatt kopieren
von: Matthias
Geschrieben am: 22.04.2005 07:13:38
Hallo Dani,
nochmals besten Dank für Deine Hilfe!
Jetzt klappt alles hervorragend!!!
Gruss
Matthias
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Daten mehrerer Blätter in ein Gesamtblatt kopieren"