meine letzte Frage wurde leider noch nicht geklärt und ich habe noch immer keine Lösung im Netz gefunden, deshalb versuche ich hier nochmal mein Glück.
Folgendes Problem: Ich habe eine Excelliste als Tabelle formatiert. Diese Tabelle hat zwangsläufig jede Menge Formatierung und bedingte Formatierung (vereinfachtes Beispiel: $A11$A10). Ich möchte gern via Makro vor der letzten Zeile eine neue einfügen und die Formatierung der 3./4.-letzten Zeile bis zum Ende mit Autofill übernehmen. Denn wenn ich nur eine neue Zeile vor A11 einfüge, zerschießt es die Bedingte Formatierung zu: $A12$A10. Ich habe zwei Makros, die aber nur zum Teil das machen, was ich möchte.
Sub NeueZeile1()
Rows(Cells(Rows.Count, 1).End(xlUp).Row).Select
Selection.Insert Shift:=xlDown
Rows(Cells(Rows.Count, 1).End(xlUp).Row - 3).Select
Selection.AutoFill Destination:=Selection.Resize(2, Selection.Columns.Count), Type:= _
xlFillFormats
End Sub
Sub NeueZeile2()
Dim lngLast As Long
lngLast = Cells(Rows.Count, 1).End(xlUp).Row
Set SourceRange = Range("A8:J8")
Rows(Cells(Rows.Count, 1).End(xlUp).Row).Select
Selection.Insert Shift:=xlDown
SourceRange.AutoFill Destination:=Range("A8:J" & lngLast), Type:=xlFillFormats
End Sub
Im ersten Makro soll er die 3. letzte Zeile wählen und das Format nach unten ziehen klappt aber nicht. Im zweiten Makro ist der Bereich leider nicht dynamisch. Die Anzahl der Spalten kann nämlich variieren und ich möchte keinesfalls immer bei A8 beginnen, sondern ein paar Zeilen vor Tabellenende.Da die Liste als Tabelle formatiert ist, könnte man theoretisch am Ende einfach einen neuen Datensatz anfügen. Dabei schreibt es zwar die bedingte Formatierung fort, aber das normale Format, wie Rahmen, Farben etc. wird nicht übernommen. Es ist also ein Teufelskreis Und meine VBA-Kenntnisse reichen nicht, um das Problem mit Destination:= im ersten Makro zu lösen. Vielleicht gehts aber auch viel einfacher. Über Ratschläge würde ich mich freuen.
MfG Marcus