Logo 
Search:

MS Office Answers

Ask Question   UnAnswered
Home » Forum » MS Office       RSS Feeds
  Question Asked By: James Rivera   on Dec 23 In MS Office Category.

  
Question Answered By: Oliver Jones   on Dec 23

Here are two functions from Chip Pearson's site
(http://www.cpearson.com/excel/colors.htm) which provide a means for summing by
color.
In this example, C4:C24 is the range to be summed, and A3 sontains your
dropdown validation  list, shaded in the same color  by which you want to sum.

Function SumByColor(InRange As Range, WhatColorIndex As Integer, _
Optional OfText As Boolean = False) As Double
' This function return the SUM of the values of cells in
' InRange with a background color, or if OfText is True a
' font color, equal to WhatColorIndex.
Dim Rng As Range
Dim OK As Boolean
Application.Volatile True
For Each Rng In InRange.Cells
If OfText = True Then
OK = (Rng.Font.ColorIndex = WhatColorIndex)
Else
OK = (Rng.Interior.ColorIndex = WhatColorIndex)
End If
If OK And IsNumeric(Rng.Value) Then
SumByColor = SumByColor + Rng.Value
End If
Next Rng
End Function

Function CellColorIndex(InRange As Range, Optional _
OfText As Boolean = False) As Integer
' This function returns the ColorIndex value of a the Interior
' (background) of a cell, or, if OfText is true, of the Font in the cell.
Application.Volatile True
If OfText = True Then
CellColorIndex = InRange(1, 1).Font.ColorIndex
Else
CellColorIndex = InRange(1, 1).Interior.ColorIndex
End If
End Function

The formula to sum C4:C24 based on the color in A3 would be:
=SumByColor(C4:C24,CellColorIndex(A3,FALSE),FALSE)

Share: 

 

This Question has 3 more answer(s). View Complete Question Thread

 
Didn't find what you were looking for? Find more on Can you color code a Validation List Or get search suggestion and latest updates.


Tagged: