Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1248to1252
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
Inhaltsverzeichnis

30 Tabellen in ein Blatt untereinander kopieren

30 Tabellen in ein Blatt untereinander kopieren
Bernhard
Hallo liebe Excel-Gemeinde,
ich habe 2 Stunden im Forum gesucht, aber leider erfolglos. Daher bitte ich nunmehr um Eure Hilfe.
In einem Verzeichnis "B:\Quelldaten" liegen 30 Dateien mit jeweils 1 Blatt. Die Dateien - jede hat ein Blatt - weisen alle eine gleiche Spalten-Struktur auf. Lediglich die Datenzeilen können von 50 bis zu 400 Zeilen variieren. Diese 30 Dateien bzw. Blätter sollen bitte alle in einer Datei "Zusammenfassung" untereinander kopiert werden.
Ergänzung (nice to have :-)):
Super wäre es, wenn vor dem Herauskopieren in diesen 30 Tabellenblättern in der Zelle A29 bis "Ende used Range" (also in soviele Zeilen, wie die Tabelle lang ist) ein Wert aus der Zelle F15 kopiert wird (dort steht die Kostenstelle).
Danke vorab.
LG, Bernhard
AW: 30 Tabellen in ein Blatt untereinander kopieren
28.01.2012 23:10:05
JoWe
Hallo Bernhard,
ein Versuch:
Option Explicit
Sub getData()
    Dim wb As Workbook
    Dim sh1 As Worksheet
    Dim aname, name1, pfad1, special As String
    Set wb = ThisWorkbook
    Set sh1 = wb.Sheets(1)
    aname = wb.Name
    pfad1 = wb.Path & "\"
    With sh1
        .Cells.Delete
        .Cells(1, 2) = "ID"
        .Cells(1, 3) = "Nummer"
        name1 = Dir(pfad1, vbNormal)
        Do While name1 <> "" And name1 <> aname
            If Right(name1, 4) = ".xls" Then
                Workbooks.Open Filename:=pfad1 & name1
                special = Sheets(1).Range("F15")
                Sheets(1).Range("B29:E" & Sheets(1).Range("b65536").End(xlUp).Row).Copy
                Windows(aname).Activate
                .Cells(.Range("b65536").End(xlUp).Row + 1, 8) = special
                .Cells(.Range("b65536").End(xlUp).Row + 1, 2).PasteSpecial Paste:=xlValues
                Windows(name1).Activate
                ActiveWorkbook.Close savechanges:=False
            End If
            name1 = Dir
        Loop
        .Cells.Select
        .Cells.EntireColumn.AutoFit
        .Cells(1, 1).Select
    End With
End Sub
Gruß
Jochen
Code eingefügt mit VBA in HTML 1.2
http://vbahtml.origo.ethz.ch
Anzeige
AW: 30 Tabellen in ein Blatt untereinander kopieren
29.01.2012 11:29:49
Bernhard
Hallo Jochen,
vielen Dank f.d. Code, leider funktioniert er aber nicht. Es werden die Blätter im Verzeichnis "B:\Quelldaten" zwar aufgerufen, aber es geschieht nichts mit diesen. Es werden nur folgende zwei Zeilen in der Datei "Zusammenfassung", in der der Code steht, erzeugt:
ID Nummer
97 7XU2QON1RQO0REEWE20VM151O WAHR WAHR
105 7XU2QON1RQO0REEWE20VM151O WAHR WAHR
https://www.herber.de/bbs/user/78642.xlsm
Würdest du bitte noch mal einen Blick auf den Code werfen?
Grüße und vielen Dank, Bernhard
AW: 30 Tabellen in ein Blatt untereinander kopieren
29.01.2012 17:04:00
JoWe
Hallo Bernhard.
lade doch mal bitte eine der 30 Dateien hoch, dann muss ich nicht weiter im Dunkeln stochern...
und komplettiere Deine Sammeltabelle mal mit einem Beispiel für das Ergebnis und lade die dann auch noch hoch.
Hier ein paar weitere Anmerkungen:
Aus welcher Tabelle heraus möchtest Du den Code starten?
Ab welcher Zeile sollen Daten importiert werden?
Welche Palten sollen dabei berücksichtigt werden?
Das alles ging aus Deiner Fragestellung nicht so richtig hervor.
Du hattest nichts zu Überschriften gesagt, daher die Idee mit "ID" und "Nummer".
Weiter war nichts darüber bekannt in wecler Zeile/Spalte der Import starten sollte.
Die hier aus Deiner Sicht notwendigen Änderungen dürften doch aber nicht allzu vile Problem aufgeworfen haben, oder?!
Gruß
Jochen
Anzeige
AW: 30 Tabellen in ein Blatt untereinander kopieren
29.01.2012 18:13:14
Bernhard
Hallo Jochen.
Gerne 2 Dateien sowie deine Fragen (vielen Dank schon mal im voraus):
Ich würde gerne aus der Datei "Zusammenfassung.xls" heraus die Zusammenfassung starten.
Ab der Zeile 29 sollen die Daten importiert werden
Die Spalten A-F sollen importiert werden
Alle Dateien liegen in dem Ordner "B:\Quelldaten"
2 Beispiels-Dateien, die zusammengefügt werden sollen
https://www.herber.de/bbs/user/78645.xls
https://www.herber.de/bbs/user/78646.xls
Die Datei "Zusammenfassungs.xls" nochmals:
https://www.herber.de/bbs/user/78647.xlsm
Herzliche Grüße aus Bayern
Bernhard
Anzeige
AW: 30 Tabellen in ein Blatt untereinander kopieren
29.01.2012 19:53:49
JoWe
Hallo Bernhard,
hier noch mal ein Versuch.
Diesmal lade ich die geänderte Arbeitsmappe hoch:
https://www.herber.de/bbs/user/78649.xls
Ich hoffe esklappt jetzt.
Gruß
Jochen
@Jochen ... Tauschend Dank
29.01.2012 20:02:16
Bernhard
Hallo Jochen.
Perfekt. Klappt wunderbar. Vielen herzlichen Dank für deine Mühen. Das hätte ich wohl nie hinbekommen. Da hast du mir sehr geholfen und mir viel Arbeit des mühseligen Kopierens erspart.
Liebe Grüße aus Bayern
Bernhard

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige