Hallo, ich habe ein Tabellenblatt (Tabelle1) mit ~40 Spalten gefüllt.
Nun möchte ich den Inhalt eines anderen Tabellenblattes (Tabelle2 mit ~30 Spalten) als ganzen Block in Tabelle 1 in einer bestimmten Zeile einfügen.
Hier der Codeschnipsel der Problemzone:
With Tabelle1
If .Cells(i - 1, Sp) <> .Cells(i, Sp) Then
.Rows(i).Copy
.Rows(i + 1).Insert xlDown
.Cells(i + 1, 1) = Ziffer 'Zähler
.Cells(i + 1, 2) = "BL"
.Cells(i, 1) = Ziffer
.Cells(i, 2) = "SL"
If .Cells(i, rngAbfrage.Column) = "True" Then
Call Nachricht_erstellen 'in diesem Sub wird Arbeit in Tabelle2 verrichtet
Tabelle2.Range("A1").CurrentRegion.Copy
.Activate
.Cells(i + 2, 1).Insert xlDown 'Hier wird die Arbeit des anderen Makros (Tabelle2) in Tabelle 1 eingefügt.
End If
Ziffer = Ziffer + 1
...
Problem: Da ich an dieser Stelle nur 30 Spalten einfüge, rücken auch nur 30 Spalten nach unten. Die restlichen 10 Spalten der Tabelle 1 bleiben einfach stehen und rücken leider nicht auf -> Endergebnis verfälscht.
Wie kann ich das einfügen und dabei die ganze Zeilen aufrücken lassen und nicht nur den benutzten Bereich?
Gruß Guest007
|