Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1904to1908
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

Zusammenführen von Tabellen

Zusammenführen von Tabellen
07.11.2022 10:14:05
Tabellen
Hallo zusammen,
ich benötige eure Hilfe bei der Konsolidierung meiner Daten.
Mein Wunsch wäre per VBA aus einem gewünschten Ordner die Dateien zu markieren, von denen aus dem ersten Tabellenblatt (namens Produkt) die Daten zusammengeführt werden.
Alle Dateien sind im Aufbau gleich: Die Daten stehen in den Spalten A bis R, in der Zeile 1 stehen gleiche Überschriften und ab A2 beginnen die Daten. Die Anzahl der Zeilen mit den Daten ist unterschiedlich. Einige Zellen bei den Daten sind nicht befüllt.
Ist es möglich, die Daten blockweise untereinander zusammenzuführen? Die Überschrift sollte aber nur 1 Mal oben auftauchen.
VG
Kisska
P.S.: Eine ähnliche Frage habe ich schon gestellt, aber mit dem Code komme ich leider nicht weiter, da ich nun einen anderen Aufbau habe und Fehler auftauchen. Ich verweise dennoch zum Beitrag:
https://www.herber.de/forum/cgi-bin/callthread.pl?index=1898249

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zusammenführen von Tabellen
07.11.2022 10:50:26
Tabellen
Hallo Kisska!
Du lieferst ein hervorragendes Beispiel, das man mit DATEN - Daten abrufen/transformieren - Aus Tabelle-Bereich lösen kann.
Möchtest du dich damit mal beschäftigen?
Einmal eingerichtet läuft das super. Und VBA ist nicht notwendig.
Viel Erfolg!
Gruß, MCO
AW: Zusammenführen von Tabellen
07.11.2022 11:34:04
Tabellen
Hallo MCO,
danke für deine Antwort!
Ich habe tatsächlich die Power-Query-Abfragen schon ausprobiert (Daten - Aus Ordner) und das ging recht schnell. Das einzige Problem ist, dass die ursprüngliche Formatierung von den Quelledateien verloren geht. Ich brauche aber quasi eine 1:1 Kopie der Daten inkl. Formatierung, deshalb nach VBA-Lösung gefragt.
VG
Kisska
Anzeige
AW: Zusammenführen von Tabellen
07.11.2022 12:14:07
Tabellen
Hallo Kisska!
Versuch diesen Code mal.
Das STOP kannst du natürlich nach Anpassen des Dateipfades löschen.

Sub Blockweise_Auslesen()
Dim FSO As Object
Dim searchfolder As Object
Dim FI As Object
Dim eachfil As Object
Set FSO = CreateObject("Scripting.Filesystemobject")
B = "Ornder hier einfügen"
Stop
Set searchfolder = FSO.GetFolder(B)
Set eachfil = searchfolder.Files            ' Dateien in der jeweiligen Root
On Error Resume Next
lz = ActiveWorkbook.Sheets(1).Range("A" & Rows.Count).End(xlUp).Row + 1 'nächste frei Zeile
Application.ScreenUpdating = False
For Each FI In eachfil                      ' Schleife über alle Dateien
FI.Open
FI.Sheets(1).Range("A1").CurrentRegion.Offset(1, 0).Copy ActiveWorkbook.Sheets(1).Cells(lz, 1)
FI.Close 0
Next FI
Set eachfil = Nothing
Set FSO = Nothing
End Sub
Gruß, MCO
Anzeige
AW: Zusammenführen von Tabellen
07.11.2022 20:43:45
Tabellen
Hallo MCO,
ich habe eine neue Datei geöffnet und deinen Code als Modul eingefügt, dann einen Pfad mit Quellendateien angegeben. Wenn ich VBA ausführe, passiert nichts.
Mache ich etwas falsch?
VG
Kisska
AW: Zusammenführen von Tabellen
08.11.2022 08:11:45
Tabellen
Guten Morgen!
Das kommt davon, wenn man nix testet :-(
Es passiert, was, man sieht nur nix :-)
Mit dem Öffnen der Arbeitsmappe aus dem Pfad ändert sich ja das "ActiveWorkbook". Im Klartext: Diese Zeile

FI.Sheets(1).Range("A1").CurrentRegion.Offset(1, 0).Copy ActiveWorkbook.Sheets(1).Cells(lz, 1)
kopiert aus der Mappe in die Mappe. Das bringt so natürlich nix.
Bitte ändere die Zeile in

FI.Sheets(1).Range("A1").CurrentRegion.Offset(1, 0).Copy ThisWorkbook.Sheets(1).Cells(lz, 1)
Mit F8 kannst du den Code auch schrittweise durchlaufen und nachvollziehen.
Gruß MCO
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige