ich habe hier einen Code der für mehrere Tabellenblätter (ab Blatt 7) in einem bestimmten Bereich (F2 : letzte genutzte Zelle) wie eine Ampel wirken soll. Vergleichswerte sind D2 und E2ff (also bei F3 z.B. D3 & E3).
Zum Verständnis, D3 ist der Höchstwert und E3 der Mindestwert. Bei überschreiten von D3 und beim unterschreiten von E3 soll rot gelten. Die Range von 10% vom Abstandswert von E3 und D3 soll über E3 bzw. unter D3 gelb anzeigen. Alles in der Mitte soll grün sein. Ich bin mit meinem Code schon etwas vorran gekommen, aber noch funktioniert er nicht wie gewünscht:
Sub Test()
Dim wks As Worksheet
Dim i As Integer
Dim strLC As String
Dim Bereich As Range
For i = 7 To Worksheets.Count
With Worksheets(i).UsedRange
strLC = .Cells(.Rows.Count, .Columns.Count).Address
Set Bereich = .Range("F2:" & strLC)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=""UND(F2>=(D2$-E2$)*0.1+E2$;F2= .FormatConditions.Add Type:=xlExpression, Formula1:= _
"=""ODER(UND(F2=>E2$;F2=D2$-(D2$-E2$)*0.1;F2=
Problem 1: Dieser Code stellt die bedingte Formatierung in den allen Zellen der Tabellenblätter ein. Also nicht nur von F2 bis zur letzten genutzten Zelle.Problem2: Die Zellen bleiben trotz dem Code weiß. Aber er ist unter bedingte Formatierung hinterlegt.
Problem 3: Wie setze ich die Dollarzeichen so, dass sie bei F3 E3 und D3 nutzen, aber z.B. bei G4 dann E4 und D4. Momentan vergleicht er überall nur mit E2 und D2.
Ich grüble jetzt schon einige Zeit an dem Problem und wäre für Hilfe äußerst dankbar! :)
LG Sebastian