ich habe ein mir ein Makro "zusammenkopiert", welches eine bedingte Formatierung von Zellen in einem bestimmten Bereich durchfuehrt.
Das Makro sieht wie folgt aus:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
' HINTERGRUND
Dim RaBereich As Range, RaZelle As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("D4:AR311")
' ActiveSheet.Unprotect
For Each RaZelle In Range(Target.Address)
If Not Intersect(RaZelle, RaBereich) Is Nothing Then
Select Case (RaZelle.Value)
Case "-"
RaZelle.Interior.ColorIndex = 2
Case "NEW"
RaZelle.Interior.ColorIndex = 3
Case "OPEN"
RaZelle.Interior.ColorIndex = 45
Case "DECIDE"
RaZelle.Interior.ColorIndex = 26
Case "IMPLEMENT"
RaZelle.Interior.ColorIndex = 23
Case "VALIDATE"
RaZelle.Interior.ColorIndex = 41
Case "CLOSED"
RaZelle.Interior.ColorIndex = 15
Case "ACCEPTED"
RaZelle.Interior.ColorIndex = 15
Case "REJECTED"
RaZelle.Interior.ColorIndex = 15
Case Else
RaZelle.Interior.ColorIndex = xlNone
End Select
End If
Next RaZelle
' ActiveSheet.protect
End Sub
Es funktioniert auch super, Allerdings nur, wenn ich eine Zelle anklicke und einen Wert eintrage. Fuer den Fall, dass ich zum Beispiel die Farben im Makro aendere, werden meine Zellen nicht upgedated. Das reagiert halt nur, wenn ich einen Zelle editiere. Nun meine Frage: Wie muss ich das Makro veraendern, damit es staendig ueber die Zellen im angegebenen Bereich schaut, bzw. was kann ich machen, damit das Makro einmal komplett ueber den Bereich schaut?
Danke und Gruesse,
Bernd