• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Voorwaardelijke opmaak via VB > 8 kleuren voor één specifieke kolom

Status
Niet open voor verdere reacties.

ericeul

Gebruiker
Lid geworden
14 feb 2008
Berichten
53
Hallo,

heb onderstaande code op dit forum gevonden en die werkt prima.
Maar dan verandert hij àlle cellen van de ganse sheet die aan die criteria voldoen.
In mijn geval zou die code enkel de cellen van zeg maar kolom A mogen veranderen. De rest moet ie laten voor wat het is.
Wat moet ik dan aanpassen aan de code?


Code:
Sub Macro3()

Dim x As Range
For Each x In ActiveSheet.UsedRange
With x
Select Case .Value
Case Is = "MS2"
.Interior.ColorIndex = 2
Case Is = "MS3"
.Interior.ColorIndex = 3
Case Is = "MP2"
.Interior.ColorIndex = 4
Case Is = "MP3"
.Interior.ColorIndex = 5
Case Is = "MS5"
.Interior.ColorIndex = 6
Case Is = "MS6"
.Interior.ColorIndex = 7
Case Is = "CL5"
.Interior.ColorIndex = 8
Case Is = "CL6"
.Interior.ColorIndex = 9
Case Is = "CS5"
.Interior.ColorIndex = 10
Case Is = "CS6"
.Interior.ColorIndex = 12
Case Else
.Interior.ColorIndex = xlNone
End Select

End With
Next

End Sub

Alsvast bedankt

Eric
 
Laatst bewerkt door een moderator:
Ericeul,
van zeg maar kolom A mogen veranderen
...verander de coderegel For Each x In ActiveSheet.UsedRange in For Each x In Range("A:A")...

Groet, Leo
 
ZO:

Code:
Sub Macro3()

Dim x As Range
For Each x In ActiveSheet.[B]Range("A1:A" & Cells(65536, "A").End(xlUp).Row)[/B]
With x
Select Case .Value
Case Is = "MS2"
.Interior.ColorIndex = 2
Case Is = "MS3"
.Interior.ColorIndex = 3
Case Is = "MP2"
.Interior.ColorIndex = 4
Case Is = "MP3"
.Interior.ColorIndex = 5
Case Is = "MS5"
.Interior.ColorIndex = 6
Case Is = "MS6"
.Interior.ColorIndex = 7
Case Is = "CL5"
.Interior.ColorIndex = 8
Case Is = "CL6"
.Interior.ColorIndex = 9
Case Is = "CS5"
.Interior.ColorIndex = 10
Case Is = "CS6"
.Interior.ColorIndex = 12
Case Else
.Interior.ColorIndex = xlNone
End Select

End With
Next

End Sub

Ik heb alleen het vette gedeelte veranderd.

Met vriendelijke groet,


Roncancio
 
Ericeul, ...verander de coderegel For Each x In ActiveSheet.UsedRange in For Each x In Range("A:A")...

Groet, Leo

Dit duurt extra lang omdat nu alle cellen van de A-kolom worden afgewerkt.

Met vriendelijke groet,


Roncancio
 
Dat werkt :thumb:

Ik moet dringend VBA gaan volgen! Het moet heerlijk zijn als de code zomaar uit je vingers vloeit.

Nogmaals bedankt :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan