如何在 Excel 中仅通过 VBA 计算已解决的评论

问题描述 投票:0回答:1

通过使用工作表的

Comments
属性,可以通过依次访问其
Count
属性来检索该工作表中的评论数量:
Worksheets(1).Comments.Count

Comment
对象是 Comments 集合的成员,包含以下属性:
Application
Author
Creator
Parent
Shape
Visible

鉴于此信息,我只能检索每个工作表的评论数量,但还想查看已解决评论与打开评论的数量和/或比率。我是否缺少一些技巧来利用提供的属性(可能像

Visible
)以某种方式获取评论是否被标记为已解决的信息?

无法删除已解决的评论,因为它们被用作某种决策和更改的文档。

excel vba office365
1个回答
0
投票
  • threaded comment
    具有
    resolved
    状态。普通评论(按审阅插入 > 注释 > 新注释)没有状态。

在 M365 中,术语“线程注释”和“注释”可能有点令人困惑。

  • 评论组实际上适用于线索评论。
  • 注释下拉菜单可用于注释。

enter image description here

微软文档:

CommentThreaded 对象 (Excel)

Sub CountCmt()
    Dim ct As CommentThreaded, iCnt As Long, iTotal As Long
    iTotal = ActiveSheet.CommentsThreaded.Count
    If iTotal = 0 Then
        MsgBox "No comments"
    Else
        For Each ct In ActiveSheet.CommentsThreaded
            If ct.Resolved Then iCnt = iCnt + 1
        Next
        MsgBox "Resolved comments: " & iCnt & vbCr & _
            "Total comments: " & iTotal
    End If
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.