Geht das auch irgendwie einfacher?
Ein bestimmter Range, beginnend drei Zeilen unterhalb eines benannten Bereichs soll bis zur letzten Tabellenzeile grün eingefärbt werden.
Das habe ich zusammengebracht, aber mit einer sehr lange und vielleicht zu komplizierten Zeile. Meine Frage ist, ob das auch irgendwie eleganter geht.
Im folgenden Makro wird als Ausgangslage erst der benannte Bereich beliebig festgelegt.
Dann folgt die fragwürdige Zeile. Sie funktioniert und liefert das richtige Ergebnis.
Sub Versuch()
'Vorbereitung: Ein Bereich namens "Neuzeit" wird definiert.
With ActiveSheet
Range("C2:G2").Name = "Neuzeit"
' Range("Neuzeit").Interior.Pattern = xlNone
Range("Neuzeit").Interior.Color = vbGreen
Range("Neuzeit").Value = "Klassik"
End With
'Jetzt sollen alle Zellen von drei Zellen unterhalb des oben definierten
'Bereichs bis zur letzten Zeile eingefärbt werden.
With ActiveSheet
'Und jetzt kommt die Monsterzeile:
.Range(.Range("Neuzeit").Offset(3, 0), _
.Cells(Rows.Count, .Range("Neuzeit").Column + _
.Range("Neuzeit").Columns.Count - 1)).Interior.Color = vbGreen
End With
End Sub
LG,
Barbara