Bestimmte Spalten von aktiver Zelle markieren?

2 Antworten

Die Frage von DocShamac ist berechtigt - was genau soll mit der Markierung erreicht werden? Vielleicht gibt es geeignetere Lösungen

Makro ist ein Einzeiler

Sub Farbe()
Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 5)).Interior.Color = vbred
End Sub

Das Rückgängigmachen ist ggf. etwas diffiziler: Wie sieht die bisherige Markierung aus? Evtl. ist des am einfachsten eine Zeile mit Standardformatierung zu kopieren und diese Formate einzufügen

Sub farbeweg()
Range("A1:E1").Copy 'ändern wenn notwendig, man könnte auch Zeile 1000 nehmen, wenn dort die Standardformatierung steht und diese unverändert bleibt
Cells(ActiveCell.Row, 1).PasteSpecial Paste:=xlPasteFormats
End Sub
jemako 
Fragesteller
 17.10.2016, 13:07

Perfekt genau das habe ich gebraucht :)

Also eigentlich würde es auch reichen, dieselben Zellen einfach wieder "no fill" zu machen, was müsste ich dafür bei ".Interior.Color = ____" einfügen? Geht das überhaupt so?

Vielen Dank für deine Antwort

0
Ninombre  17.10.2016, 13:33
@jemako

ich bin irgendwie von was kompliziertem ausgegangen.

=xlNone

1

Ob ein Makro die beste Lösung ist hängt ein bisschen davon ab, was du erreichen möchtest. Ich kann mir vorstellen dass eine "bedingte Formatierung" dir vielleicht auch weiterhilft.

Dabei kannst du die Farbe einer oder mehrerer Zellen von den Werten in ganz anderen Zellen abhängig machen. Beispiel: Zelle A24 (Kontostand) ist negativ, dann färbe den Warnhinweis in Zelle B13 rot.