ich habe mir eine VBA- Funktion geschrieben die alle Zeilen ab der von mir markierten kopiert und eine Zeile tiefer einfügt. Hier ist der Code dazu:
Sub ZellenEinfügen()
'Aufrufposition merken
Dim iStartRow As Integer
iStartRow = ActiveCell.Row
'Letzte markierte Zeile wird ermittelt
Dim rSelectedRow As Range
Dim iLastSelectedRow As Integer
For Each rSelectedRow In Selection.Rows
iLastSelectedRow = rSelectedRow.Row
Next rSelectedRow
'gesamten Bereich inklusive und unterhalb der aktuellen Zeile markieren und eine Zeile _
tiefer einfügen
Range(Cells(iStartRow, 1), ActiveCell.SpecialCells(xlLastCell)).Copy _
Range(Cells(iLastSelectedRow + 1, 1), Cells(ActiveCell.SpecialCells(xlLastCell).Row + 1, _
ActiveCell.SpecialCells(xlLastCell).Column))
End Sub
Das funktioniert auch soweit wie es soll. Wenn ich aber Zeilen über Excel herausfiltere und dann eine Zeile über einer herausgefilterten Zeile makiere und die Funktion starte bekomme ich die Fehlermeldung:
"Laufzeitfehler '1004': Bei einer Makierung von nicht angrenzenden Zellen ist die Ausführung dieses Befehls nicht möglich."
Gibt es eine Möglichkeit diesen Fehler zu umgehen ohne die gefilterten Zeilen wieder einzublenden?
Vielen Dank im Voraus
Gruß
Paul