welches Listen aus mehreren Tabellenblättern in eine Datei zusammenfügt (leider finde ich den Beitrag hier nicht mehr).
Es sollen in dem Beispiel nur die Daten aus dem Arbeitsblatt "Ergebnis" in das Tabellenblatt "Input" eingefügt werden. Leider wird die erste Zeile komplett ignoriert. Ich vermute das liegt an dem LBound und Ubound. Kann mir da jmd. einen Tip geben?
Hier die anonymisierte Excel (Danke an https://www.ms-office-forum.net/forum/showthread.php?t=322895)
https://www.herber.de/bbs/user/148061.xlsm
Hier der Code:
Sub TabellenKonsolidieren()
Dim i As Integer
Dim z As Integer
Dim r As Long, c As Long
Dim SZ As Worksheet
Dim rng()
Set SZ = Sheets("Input")
With SZ
z = .Cells(.Rows.Count, 1).End(xlUp).Row
If z = 1 Then z = 2
.Range(.Cells(2, 1), .Cells(z, 3)).ClearContents
End With
z = 3
With ActiveWorkbook
For i = 1 To .Worksheets.Count - 5 '-5, da die letzten Worksheets "Input", "Output", ... nicht meitgezählt werden sollen
rng = .Worksheets(i).UsedRange.Value
For r = LBound(rng, 1) + 1 To UBound(rng, 1)
For c = LBound(rng, 2) To UBound(rng, 2)
With SZ
.Cells(z, c) = rng(r, c)
End With
Next
z = z + 1
Next
Next
End With
Cells.RowHeight = 15
End Sub