我有一个简单的Word宏来为所选文本添加新评论:
Dim cmtMyComment As Comment
Set cmtMyComment = Comments.Add(Selection.range, "abc")
Debug.Print cmtMyComment.Index & ". " & Selection.range.Start & " - " & Selection.range.End
Debug.Print cmtMyComment.range.Start & " - " & cmtMyComment.range.End
和Word文档在一个页面上有很多评论:
在页面底部选择一些文本并运行此宏后,它运行良好。我的评论被添加为评论文本的最后一个" abc"评论指数38.
调试输出:
38. 1099 - 1107
1265 - 1268
当我右键点击最后评论的文字范围并选择"编辑评论" (= Upravit komentar)它显示编辑评论的窗口。
关闭编辑窗口后,我尝试在底部选择新文本并运行我的宏。新评论会添加到所选位置,但没有文字 - 它只是一个空评论。注释的文本将附加到页面的第一个注释。所以现在每个新注释都是空的,文本被附加到第一个注释的开头(注释索引现在是1)。
调试输出:
1. 1003 - 1011
1 - 17
我有MS Word 2016.直到我在编辑窗口中添加注释而不编辑注释,我的宏才能正常工作。
在编辑窗口中编辑注释后是否有解决方法添加注释?
答案 0 :(得分:1)
我有类似的事情,但在2010年有脚注。
我怀疑它是在评论窗格中选择文本而不是文档正文。让宏确保修订版窗格已关闭。
ActiveDocument.ActiveWindow.View.SplitSpecial = wdPaneNone
同时将Comments
加上Selection
前缀,这有助于您调试问题。
Set cmtMyComment = Selection.Comments.Add(Selection.range, "abc")