Hallo zusammen,
Ich habe eine Excel mit verschiedenen Tabllen. Diese Tabellen haben alle die gleiche Spaltenstruktur mit denselben Überschriften. Die Zeilenanzahl wird vermutlich unterschiedlich sein. Tabelle 1 ist leer, Tabelle2,3,4,5 usw. enthalten die Daten, die einfach nur untereinander in Tabelle 1 kopiert werden sollen. Das habe ich mit Hilfe von Google soweit hin bekommen. Mein Problem jetzt: Das Makro kopiert mir auch die jeweiligen Überschriften aus Zeile 1 mit in Tabelle 1. Das Makro soll aber immer erst in der 2. Zeile starten.
Sub TabellenKopierenUntereinander()
Dim i As Integer With ActiveWorkbook
For i = 2 To .Worksheets.Count
Set Rng = .Worksheets(i).UsedRange
Set rng1 = Worksheets(1).Cells(Rows.Count, "B").End(xlUp)(2)
Rng.Copy Destination:=rng1
Next
End With
End Sub
Ich nehme mal an, dass ich hier was mit der UsedRange verändern muss, komm aber nicht drauf, was und wie genau.
Alternativ hätte ich noch einen anderen Code gefunden, bei dem es perfekt funktioniert nur nimmt er mir immer die letzte Spalte nicht mit. Sprich, wenn ich 7 Spalten habe, kopiert mir nur 6, wenn ich 20 habe nur 19, etc.
Sub BCopy()
Dim i As Long
Dim sName As String
'Bildschirmaktualisierung ausschalten
Application.ScreenUpdating = False
'alle Blätter kopieren und in neues einfügen
For i = 2 To Worksheets.Count
Sheets(i).Select
Sheets(i).Range(Cells(2, 1), Cells(Sheets(i).UsedRange.Rows.Count, Sheets(i).UsedRange.Columns.Count)).Copy
Sheets(1).Paste Destination:=Sheets(1).Cells(Sheets(1).UsedRange.Rows.Count + 1, 1)
Next i
'Zwischenablage leeren
Application.CutCopyMode = False
'Gesamtblatt anzeigen
Sheets(1).Select
'optimale Anpassung der Spalten
Columns.AutoFit
'Bildschirmaktualisierung einschalten
Application.ScreenUpdating = True
End Sub
Wäre überagend, wenn mir hier jemand weiterhelfen könnte!
Beste Grüße
Kilian
|