Thomas的文档很大,在为他人发布文档之前,应删除其中的项目。选择了文档中需要删除的部分,并标记了注释,指出应在发布之前将其删除。托马斯(Thomas)希望快速找到并替换以此方式发表评论的所有文本并将其删除。

使用查找和替换,他所能做的就是查找评论。他还没有找到一种方法来弄清楚注释是否表明应该删除文本,也没有想出如何删除突出显示的实际文档文本。

这听起来很艰巨,因为它涉及许多步骤。您需要找到一个注释,您需要查看注释的主体以查看其是否与所需的措辞相匹配,您需要删除文档主体中的注释文本,然后再删除注释本身。这是宏的工作。

幸运的是,可以使用VBA通过“评论”组访问文档中的所有评论。您可以逐步浏览每个注释,并查看其中是否包含“触发文字”,以指示应删除该注释(及其引用的文本)。在下面的示例中,如果注释文本在注释中的任何位置包含单词“ delete this”,则它将用作触发器。

Sub DeleteCommentsBaseText()

Dim c As Comment For Each c In ActiveDocument.Comments     If LCase(Trim(c.Range.Text)) Like "delete this" Then         c.Scope.Delete         c.DeleteRecursively     End If Next c End Sub

如果触发词在注释中,则将删除Scope属性;否则,将删除Scope属性。此属性指示创建注释时选择的文档文本。然后,使用DeleteRecursively方法删除实际注释。 (在Word 2013中添加了DeleteRecursively方法。在早期版本中,应改为使用Delete方法。)

请了解,运行宏时,它非常快,并且更改无法撤消。相反,如果您想要更多地控制删除哪些注释和文本,那么您可能需要重新考虑您的工作流程。如果您使用“跟踪更改”,则放置注释的任何人也可能会将文档文本标记为删除。然后,在完成文档定稿之前,您可以关闭“跟踪更改”,并逐步完成每个更改以确定是否应接受。它的速度不如上面的宏快,但可以为您提供更好的控制。

注意:

如果您想知道如何使用此页面(或_WordTips_网站上的任何其他页面)中描述的宏,我准备了一个包含有用信息的特殊页面。

_WordTips_是您进行经济有效的Microsoft Word培训的来源。

(Microsoft Word是世界上最流行的文字处理软件。)本技巧(2490)适用于Microsoft Word 2007、2010、2013、2016、2019和Office 365中的Word。