• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 609
  • Last Modified:

Excel conditional format: color cells


In Excel, I have a column which has four words which might occupy each cell: Internal, External, Unassigned, Unknown.

I would like to assign cell color, depending on which word was used in the cell...

Internal - blue (#3366FF)
External - orange (#FF6600)
Unassigned - gray (#969696)
Unknown - red (#FF0000)

Can you help me get started on how to specify these in VBA?

Thank you!
John Darby
John Darby
  • 3
  • 2
2 Solutions
I suggest you use standard conditional formatting instead of VBA.

Select column, apply conditional formattingEnter the text to match, select custom formattingSelect fill, more colorsLook up the RGB equivalents of your HEXEnter the RGB value
This should help you along the way, put it in the sheet code for what ever sheet you are using.  Be sure to change Sheets(1) to what ever number you are using and change the Column from A in line 3 and line 5 to what ever column you are using.

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim strText As String
    LastRow = Sheets(1).Range("A65536").End(xlUp).Row

    If Intersect(Target, Me.Range("A2:A" & LastRow)) Is Nothing Then
        Exit Sub
        'Converting the text to lower case to compare
        strText = LCase(Target.Value)
        Select Case strText
            Case "internal"
                Target.Interior.ColorIndex = 5 'Blue
            Case "external"
                Target.Interior.ColorIndex = 46 'Orange
            Case "unassigned "
                Target.Interior.ColorIndex = 16 'Gray
            Case "unknown"
                Target.Interior.ColorIndex = 3 'Red
            Case Else
        End Select
    End If
End Sub

Open in new window

Here is an example Excel and a website that does HEX-RGB conversion:
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

Forgot to mention on my post you can use sheet name vs sheet index.  Just put name inside quotes Sheets(1) same as Sheets("Sheet1")
Here are your RGB values:
51   102  255 - Internal
255  102    0 - External
150  150  150 - Unassigned
255    0    0 - Unknown

Open in new window

John DarbyPMAuthor Commented:
Thank you, both! Very helpful to get a peek at 2 options!

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now