VBA Code to Count Color Cells with Conditional Formatting

Excel VBA Tricks

Have you ever got into situation in office where you need to count the cells with specific color in conditional formatted Excel sheet? If yes then you can use following code which counts the number of cells with specific color (here it is yellow) and put the count in cell

Screenshot1

Public Sub CountColorCells()
    'Variable declaration
    Dim rng As Range
    Dim lColorCounter As Long
    Dim rngCell As Range
    'Set the range
    Set rng = Sheet1.Range("A2:A11")
    'loop throught each cell in the range
    For Each rngCell In rng
        'Checking Yellor color
        If Cells(rngCell.Row, rngCell.Column).DisplayFormat.Interior.Color = RGB(255, 255, 0) Then
            lColorCounter = lColorCounter + 1
        End If
    Next
    'Display the value in cell A12
    Sheet1.Range("A12") = lColorCounter
End Sub

It is worth to mention that DisplayFormat.Interior.Color works only on Excel 2010 or above. Also the above code does not count the cells where cell color is manually changed by user. You can use .Interior.Color to get the cell colors or read this post.

To use this code in your Excel file, follow below steps:
1. Open the Excel file where you want to count the color cells
2. Press Alt+F11
3. Insert a Module (Insert>Module) from menu bar
4. Paste the code in the module
5. Now add a shape in Excel sheet
6. Give a name to the shape like ‘Refresh Count’
Screenshot2
7. Right click on the shape and select ‘Assign Macro…’
Screenshot3
8. Select CountColorCells from the list and click on ‘Ok’ button
Screenshot4
9. Done

Here I have counted the cells with yellow color. You can change RGB (#,#,#) code to count other colors. You can find RGB codes of any color using following steps:

1. Select the cell which contain the color you want to count
Screen2
2. Right click and select ‘Format Cells…’
Screen3
3. In the Format Cells dialog box go to ‘Fill’ tab and click on ‘More Colors…’
Screen4
4. That’s all, in the ‘Color’ dialog box, you can view the RGB (Red, Green, Blue) codes of the color
Screen5

If you are look for a code to sum the cells based on it’s color then you can read this post.

Leave a Reply

Your email address will not be published. Required fields are marked *