【发布时间】:2017-11-28 09:03:52
【问题描述】:
我正在尝试在 Excel 中编写一个宏来按字体颜色求和。一位同事建议我使用这篇文章寻求帮助:ExtendOffice。
但是,它总是给出语法错误,我不知道为什么。
代码为:
Public Function SumByColor(pRange1 As Range, pRange2 As Range) As Double
Application.Volatile
Dim rng As Range
Dim xTotal As Double
xTotal = 0
For Each rng In pRange1
If rng.Font.Color = pRange2.Font.Color Then
xTotal = xTotal + rng.Value
End If
Next
SumByColor = xTotal
End Function
【问题讨论】:
-
这段代码对我来说很好用,你如何使用它?你是从
Sub调用它吗?或来自工作表中的单元格(作为 UDF)? -
请记住使用颜色作为数据的固有缺陷 - 更改字体颜色不会触发重新计算,因此您无法保证此函数在任何给定时间实际上都是正确的,除非您强制重新计算。
标签: excel user-defined-functions vba