Counting Shaded Cells

by Allen Wyatt
(last updated May 2, 2016)

1

Excel allows you to apply all sorts of formatting to the cells in your workbook. One of the things you can do is to "shade" cells using a pattern or color. (You do this on the Patterns tab of the Format Cells dialog box.) At some point you may want to know how many cells in a range are shaded.

There is no worksheet formula in Excel that will allow you to count shaded cells. Instead, you must develop your own macro to do this. The following macro is an example of a way to approach this problem. It counts the number of shaded cells in the range of A1 through J20, and places the count in cell A1.

Sub CountColor()
    Dim irow, icol As Integer

    Cells(1, 1) = 0
    For irow = 1 To 20
        For icol = 1 To 10
            If Cells(irow, icol).Interior.ColorIndex _
              <> xlColorIndexNone Then
                Cells(1, 1) = Cells(1, 1) + 1
            End If
        Next icol
    Next irow
End Sub

Notice that the heart of the routine is the comparison that is done between the ColorIndex of each cell and the pre-defined xlColorIndexNone constant. If they are not equal, then the cell has been shaded in some way.

This same basic technique can be easily adapted to a custom function. Notice in the following that the same comparison is done on a cell-by-cell basis:

Function FindShades(a As Range) As Integer
    FindShades = 0
    For Each c In a
        If c.Interior.ColorIndex <> xlColorIndexNone Then
            FindShades = FindShades + 1
        End If
    Next c
End Function

In order to use this function, simply use it in a cell, as a formula, and specify a range in the formula:

= FindShades(B7:E52)

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (2059) applies to Microsoft Excel 97, 2000, 2002, and 2003.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He  is president of Sharon Parq Associates, a computer and publishing services company. ...

MORE FROM ALLEN

Spell-checking Uppercase Words

When Word checks the spelling of a document, it can either check or ignore words that are in uppercase letters. Here's how to ...

Discover More

Rounding to the Nearest Half Dollar

When working with financial data, it's easy to round values to the nearest dollar. What if you want them rounded to the ...

Discover More

Talking to Yourself

Need to keep notes about a document, but you don't want others to see those notes either on-screen or on-paper? Here's an ...

Discover More

Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!

More ExcelTips (menu)

Spreading Out a Table

If someone sends you a worksheet that has lots of data in it, you might want to "spread out" the data so you can have some ...

Discover More

Forcing Manual Calculation For a Workbook

If you have a large, complex workbook, you may want to make sure that it is always calculated manually instead of ...

Discover More

Determining the Length of a String

Macros are great for working with strings, and one of the most commonly used string functions is Len. This tip explains how ...

Discover More
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.

Comments

If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] in your comment text. You’ll be prompted to upload your image when you submit the comment. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is seven minus 5?

2015-04-12 16:22:42

Franciscus Maas

Hi,
This works great for manually shaded cells, but does not work for cells shaded as a result of conditional formatting. Is there some way to achieve counting of manually shaded cells AND those shaded/filled as a result of conditional formatting?
Regards,
Franciscus


This Site

Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.

Newest Tips
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.