|
楼主 |
发表于 2017-2-12 16:07
|
显示全部楼层
'自定义函数_按单元格颜色求和
Function COLORSUM(单元格区域 As range, 汇总的颜色 As range)
Set d = CreateObject("Scripting.Dictionary")
For Each Rng In 汇总的颜色
d(Rng.Interior.ColorIndex) = ""
Next
For Each ci In d.keys
For Each Rng In 单元格区域
If Rng.Interior.ColorIndex = ci Then
r = r + Rng.Value
End If
Next
Next
COLORSUM = r
End Function
Sub test()
Set d = CreateObject("Scripting.Dictionary")
Set 区域 = Application.InputBox("区域选择", , , , , , , 8)
Set 颜色 = Application.InputBox("颜色选择", , , , , , , 8)
For Each Rng In 颜色
d(Rng.Interior.ColorIndex) = ""
Next
For Each ci In d.keys
For Each Rng In 区域
If Rng.Interior.ColorIndex = ci Then
r = r + Rng.Value
End If
Next
Next
MsgBox r
End Sub
|
|