VBA herkent geen kleur van voorwaardelijke opmaak

  • Onderwerp starter Onderwerp starter sawo
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

sawo

Gebruiker
Lid geworden
16 jun 2015
Berichten
8
Hallo,

In bijgesloten bestand zijn de cellen op rij 1 handmatig van rood gekleurd. De cellen op rij 3 zijn rood gemaakt door voorwaardelijke opmaak. Als ik nu in alle rode cellen door VBA een "X" wil laten plaatsen dan doet hij dat wel in de cellen die handmatig gekleurd zijn maar niet met de cellen die door voorwaardelijke opmaak gekleurd zijn.

Iemand enig idee hoe ik dit voor elkaar krijg?

Alvast bedankt.

Als voorbeeld heb ik een bestandje bijgesloten.

Bekijk bijlage VBA Kleur.xlsm
 
Hoi,
Dit zal niet lukken met voorwaardelijke opmaak omdat voorwaardelijke opmaak geen gebruik maakt van Interior.ColorIndex.

groet
 
of de voorwaarde van VO mee opnemen


Code:
Sub XopRood()
' XopRood Macro
With ActiveSheet
For Each cl In Range("B1:H3")
    If cl.Interior.ColorIndex = 3 Or .Cells(cl.Row, 9).Value = "Rood" Then cl.Value = "X"
Next
End With
End Sub


mvg
Leo
 
Ook een poging met voorwaardelijke opmaak.

Code:
Sub VenA()
On Error Resume Next
For Each cl In Range("B1:H3")
    t = Evaluate(cl.FormatConditions(1).Formula1) And cl.FormatConditions(1).Interior.Color = 255
    If cl.Interior.ColorIndex = 3 Or t Then cl.Value = "X"
Next
End Sub
 
nog een:

Code:
Sub M_snb()
    For Each cl In Range("B1:H3").SpecialCells(-4172)
       If Evaluate(cl.FormatConditions(1).Formula1) Then cl.Value = "Y"
    Next
End Sub
 
Bedankt allemaal voor de input.

De code die ik nu gebruik is

Code:
Sub VenA()
On Error Resume Next
For Each cl In Range("B1:H3")
    cl.ClearContents
    If Evaluate(cl.FormatConditions(1).Formula1) And cl.FormatConditions(1).Interior.Color = RGB(255, 0, 0) Then cl.Value = "X"
Next
End Sub

Deze voldoet prima.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan