Vba Word宏添加注释,编辑注释后出现奇怪行为

Vba Word宏添加注释,编辑注释后出现奇怪行为,vba,ms-word,Vba,Ms Word,我有一个简单的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.rang

我有一个简单的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
1. 1003 - 1011
1 - 17
当我右键单击最后一条评论的文本范围并选择“编辑评论”(=Upravit komentar)时,它会显示编辑评论的窗口

关闭编辑窗口后,我尝试在底部选择新文本并运行宏。新注释添加到选定位置,但没有文本-它只是一个空注释。注释文本将附加到页面的第一条注释。所以现在每个新注释都是空的,文本被附加到第一个注释的开头(注释索引现在是1)

调试输出:

38. 1099 - 1107
1265 - 1268
1. 1003 - 1011
1 - 17

我有Word 2016。在我添加注释而不在编辑窗口中编辑注释之前,我的宏工作得很好


在编辑窗口中编辑一条评论后,是否有添加评论的解决方法?

我也有类似的想法,但在2010年,它与脚注一起出现了

我怀疑它选择的是评论窗格中的文本,而不是文档正文。让宏确保修订窗格已关闭

ActiveDocument.ActiveWindow.View.SplitSpecial = wdPaneNone
另外,在
注释
前面加上
选项
,这将帮助您调试问题

Set cmtMyComment = Selection.Comments.Add(Selection.range, "abc")

谢谢你的回答,但是没有用。我发现,当我显示“编辑注释窗口”时,新窗格已打开,但无法通过
ActiveDocument.ActiveWindow.Panes(2)关闭它。关闭
它会显示“运行时错误'5867”:如果窗口只是一个部分,则无法关闭窗口