Sam的文档包含一些表,他想在其中删除一些行。这些行包含特定的文本,他当然可以使用“查找和替换”将其删除,但是他想删除包含该文本的整个行。

没有办法使用Word的常规“查找和替换”功能来执行此操作(删除行)。相反,您需要使用一个宏,该宏将查找文本,然后删除整行。这是一个可以完成工作的相对简单的宏:

Sub DeleteRowWithSpecifiedText()

Dim sText As String

sText = InputBox("Enter text for Row to be deleted")

Selection.Find.ClearFormatting     With Selection.Find         .Text = sText         .Wrap = wdFindContinue     End With     Do While Selection.Find.Execute         If Selection.Information(wdWithInTable) Then             Selection.Rows.Delete         End If     Loop End Sub

该宏首先显示一个输入框,要求用户指定要搜索的文本。然后,它开始搜索该文本的所有实例。如果找到一个实例,则检查选择以确保它在表中。如果是这样,则整个行都将被删除,并且宏将移至下一个出现的位置。

注意:

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

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

(Microsoft Word是世界上最流行的文字处理软件。)本提示(13148)适用于Microsoft Word 2007、2010、2013、2016、2019和Office 365中的Word。 Word的旧菜单界面在这里: