这个问题可以通过创建颜色统计函数来解决。其方法如下:
第一步,打开此工作簿,转到在VBA编辑器中,插入新模块,写入以下代码:
Function SumColor(srange As Range, col As Range)
Dim Rng As Range
Application.Volatile
For Each Rng In srange
If Rng.Interior.ColorIndex = col.Interior.ColorIndex Then
SumColor = Application.Sum(Rng) + SumColor
End If
Next Rng
End Function
保存后退出编辑器。到下一步。
第二步,调用此函数。
本例中,在指定的单元格中输入:=SUMCOLOR(用鼠标拖动选定统计区域,点击休整所在的单元格)。此自定义函数有两个参数,参数一是统计区域,参数二是指定颜色的单元格。
注意,自定义函数有时会失效,原因是本函数中定义的变量与其它自定义函数中的变量冲突,请更改变量名解决。