1.1k Aufrufe
Gefragt in Tabellenkalkulation von
Ich habe per Makro den Bedarf an zusätzlichen Zeilen ermittelt und in der Variable
zuszeilen gespeichert.

Nun möchte ich per Makro sagen, dass am Ende der Tabelle2, diese Anzahl zuszeilen eingefügt werden soll.

Wie wäre hierfür der Code?

5 Antworten

0 Punkte
Beantwortet von
Ach ja und in den neuen Zellen, sollen die Formeln der dann darüberliegenden Zeilen für jede Zelle übernommen werden
0 Punkte
Beantwortet von m-o Profi (22.9k Punkte)
Hallo,

hier mal ein Beispiel:

Sub zeilen()
Dim zuzeilen As Long
Dim lngLetzte As Long

lngLetzte = Worksheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).Row
zuzeilen = 3

With Worksheets("Tabelle2")
.Range(.Cells(lngLetzte + 1, 1), .Cells(lngLetzte + zuzeilen, 1)).EntireRow.Insert Shift:=xlDown
End With

End Sub


Gruß

M.O.
0 Punkte
Beantwortet von m-o Profi (22.9k Punkte)
Hallo,

und hier mit kopieren der Formeln:

Sub zeilen()
Dim zuzeilen As Long
Dim lngLetzte As Long
Dim zeilen As Long

lngLetzte = Worksheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).Row
zuzeilen = 3

'Zeilen einfügen
With Worksheets("Tabelle2")
.Range(.Cells(lngLetzte + 1, 1), .Cells(lngLetzte + zuzeilen, 1)).EntireRow.Insert Shift:=xlDown
End With

'Daten kopieren
Worksheets("Tabelle2").Cells(lngLetzte, 1).EntireRow.Copy
For zeile = 1 To zuzeilen
Worksheets("Tabelle2").Cells(lngLetzte + zeile, 1).PasteSpecial Paste:=xlPasteFormulas
Next zeile

Application.CutCopyMode = False

End Sub


Gruß

M.O.
0 Punkte
Beantwortet von
Das Makro macht schon das was es soll, irgendwie jedenfalls. Allerdings wird bei jedem Mal wo ich es laufen lassen, 1 Zeile eingefügt.

Ich möchte aber dass in Tabellenblatt2 die Differenz Anzahl Zeilen Tabellenblatt1 zu Tabellenblatt2 eingefügt werden.
0 Punkte
Beantwortet von m-o Profi (22.9k Punkte)
Hallo,

das Makro war als Beispiel gedacht, wie man Zeilen einfügen und Formeln kopieren kann. Das musst du natürlich entsprechend anpassen bzw in dein vorhandenes Makro einbauen.
Falls du damit nicht klarkommst, dann poste mal das Makro, das du gerade benutzt.

Gruß

M.O.
...