【发布时间】:2015-11-05 03:53:31
【问题描述】:
我需要这方面的帮助。我正在做报告并在单元格上插入 cmets。如何使用 vba 或公式计算具有特定值的 Excel 范围内的单元格?
【问题讨论】:
我需要这方面的帮助。我正在做报告并在单元格上插入 cmets。如何使用 vba 或公式计算具有特定值的 Excel 范围内的单元格?
【问题讨论】:
这是一种方法。它遍历您在范围内传递的每个单元格并检查是否有注释。如果是这样,它会将其添加到计数器中。如果在大范围内使用,这可能会非常昂贵,但它至少应该让你开始:
添加到常规模块:
Function CommentCounter(rng As Range) As Integer
Dim cell As Range
Dim counter As Integer
Dim currentComment As String
For Each cell In rng
On Error Resume Next
currentComment = cell.Comment.Text
If Len(currentComment) > 0 Then counter = counter + 1
currentComment = ""
Next cell
CommentCounter = counter
End Function
刚刚看到关于具有特定价值和评论的部分。这应该可以帮助您:
Function CommentCounter(rng As Range) As Integer
Dim cell As Range
Dim counter As Integer
Dim currentComment As String
Dim specificValue As String
specificValue = "Something Specific"
For Each cell In rng
On Error Resume Next
currentComment = cell.Comment.Text
If cell.Value = specificValue And Len(currentComment) > 0 Then counter = counter + 1
currentComment = ""
Next cell
CommentCounter = counter
End Function
【讨论】:
=COUNTIF(A:A;"comment")
其中 A:A 指定您要检查 A 的整个列。您也可以使用 A1:A3 代替 A:A,这意味着检查 A1、A2 和 A3。
编辑:
如果您想用 cmets(而不是“评论”一词)计算单元格,我建议您执行以下操作:
=COUNT(A1:A3) - COUNTBLANK(A1:A3)
【讨论】: