met met inhoud moet rood worden

Status
Niet open voor verdere reacties.

rhvanloenen

Gebruiker
Lid geworden
25 nov 2012
Berichten
26
Ik heb het onderstaande script waarbij van negen cellen een aantal blauw moet worden (aantal is cl.value). De rest van de negen wordt grijs. Werkt prima.
Maar nu wil ik in het tweede gedeelte, in de grijze cellen, cellen die niet leeg zijn rood kleuren.
Heb al flink lopen zoeken, maar kom er niet mooi uit binnen dit script. Nu wordt elke cel cl.value+1 rood, met of zonder inhoud.
Wat moet er aangepast worden.

For Each cl In Range("E1:E" & Cells(Rows.Count, 3).End(xlUp).Row) '.SpecialCells(2, 1)

If cl.Value >= 1 Then
'reeks van negen cellen
'cl.value is aantal cellen van de negen dat blauw moet worden.


If IsNumeric(cl.Value) = True Then
cl.Offset(, 1).Resize(, cl).Interior.ColorIndex = 34 ' cl is de waarde van het aantal andere kleur cellen uit kolom E
'de rest van de negen cellen wordt grijs
cl.Offset(, 1 + cl.Value).Resize(, 9 - cl.Value).Interior.ColorIndex = 15 '9 is het aantal cellen hiervanaf E

'Tot hier gaat het goed, maar hierna kom ik er niet uit. Negen cellen - cl.value, daarin elke cel met een tekst, dan moet die cel rood worden.

If Not IsEmpty(ActiveCell.Value) Then
cl.Offset(, 1 + cl.Value).Interior.ColorIndex = 46 'oranje
End If

End If

End If

Next cl
CELLEN.JPG
 
Zie #2 in jouw vorige draadje.

Je zal wel zoiets bedoelen.

Code:
Sub VenA()
For Each cl In Range("E4:E" & Cells(Rows.Count, 3).End(xlUp).Row).SpecialCells(2, 1)
    If cl > 0 Then
        cl.Offset(, 1).Resize(, cl).Interior.ColorIndex = 34
        cl.Offset(, 1 + cl).Resize(, 9 - cl).Interior.ColorIndex = 15
        If cl.Offset(, 1 + cl) <> "" Then cl.Offset(, 1 + cl).Interior.ColorIndex = 46
     End If
Next cl
End Sub
 
Laatst bewerkt:
Ik snap niet precies wat je wilt bereiken maar heb sterk het gevoel dat je je doel ook met 'voorwaardelijke opmaak' kan bereiken. Of niet? :confused:

Verder zou ik de check op IsNumeric() eerder uitvoeren dan 'If cl.Value >= 1 Then' omdat die er al vanuit gaat dat de waarde numeriek is... :d
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan