224 Aufrufe
Gefragt in Tabellenkalkulation von

Hallo!
Ich bin neu im Bereich der Arbeit mit VBA und finde partout keine Antwort auf meine Frage. 

Im Grundsatz möchte ich das Makro über eine Tabelle laufen lassen: Wenn Farbe RGB (xyz) erkannt wird, soll diese automatisch zu Farbe RGB (zyx) geändert werden. An sich ja keine sonderlich anspruchsvolle Änderung. 

Ich habe es bisher mit einer Art WENN-DANN Funktion versucht, aber so einiges passt hierbei wohl noch nicht; wie gesagt bin blutiger Anfänger. 

So sieht das ganze bisher aus:

Sub FarbTest2_If…Then()
If ActiveSheet.Cells.Interior.Color = RGB(128, 128, 128) Then ActiveSheet.Cells.Interior.Color = RGB(207, 143, 198)
End Sub

Vielen Dank schon Mal!

1 Antwort

0 Punkte
Beantwortet von m-o Profi (22.8k Punkte)
 
Beste Antwort

Hallo Michi,

mit deinem Makro würdest du das ganze Tabellenblatt färben, wenn es denn laufen würde.

Du musst die Zellen ansprechen, die du prüfen willst, z.B. so:

Sub FarbTest2_If…Then()
Dim rngZelle As Range

For Each rngZelle In ActiveSheet.UsedRange
 If rngZelle.Interior.Color = RGB(128, 128, 128) Then rngZelle.Interior.Color = RGB(207, 143, 198)
Next rngZelle
 
End Sub

Dieser Code prüft jede Zelle des Arbeitsblattes, die im verwendeten Bereich des aktuellen Arbeitsblatts liegt und ändert die Farbe entsprechend deinen Wünschen.

Gruß

M.O.

...