24.01.2017, 11:20
Hallo zusammen!
Aus einer Exceltabelle möchte ich alle vorhandenen Tabellenblätter auf einem Tabellenblatt zusammenfügen. Überschift ist auf jedem Blatt identisch und soll nur einmal auf dem neuen Tabellenblatt einmal als überschift übernommen werden.
Ich habe einen Code, dieser funktioniert aber nicht so wie ich mit das vorstelle:
Sub TabellenKopierenUntereinander()
Dim i As Integer
With ActiveWorkbook
'neue Tabelle an die erste Position einfügen
.Worksheets.Add Before:=.Worksheets(1)
For i = 2 To .Worksheets.Count
'Ermitteln den benutzen Bereich der einzelnen Tabellenblätter
Set Rng = .Worksheets(i).UsedRange
'letzte Zeile ermitteln des ersten Blattes
Set rng1 = Worksheets(1).Cells(Rows.Count, "A").End(xlUp)(2)
'Bereich kopieren
Rng.Copy Destination:=rng1
Next
End With
End Sub
Was muss verändert werden?
Gruß
Aus einer Exceltabelle möchte ich alle vorhandenen Tabellenblätter auf einem Tabellenblatt zusammenfügen. Überschift ist auf jedem Blatt identisch und soll nur einmal auf dem neuen Tabellenblatt einmal als überschift übernommen werden.
Ich habe einen Code, dieser funktioniert aber nicht so wie ich mit das vorstelle:
Sub TabellenKopierenUntereinander()
Dim i As Integer
With ActiveWorkbook
'neue Tabelle an die erste Position einfügen
.Worksheets.Add Before:=.Worksheets(1)
For i = 2 To .Worksheets.Count
'Ermitteln den benutzen Bereich der einzelnen Tabellenblätter
Set Rng = .Worksheets(i).UsedRange
'letzte Zeile ermitteln des ersten Blattes
Set rng1 = Worksheets(1).Cells(Rows.Count, "A").End(xlUp)(2)
'Bereich kopieren
Rng.Copy Destination:=rng1
Next
End With
End Sub
Was muss verändert werden?
Gruß