对于某些文档,可能需要在引号中加下划线。例如,对于某些法律文件,您可能需要查找所有用引号括起来的材料,然后使引号之间的信息带有下划线。这与常规的散文写作不同,在常规的散文写作中,您将使用下划线或引号,但不能同时使用下划线或引号。

如果需要搜索所有带引号的文本并使其带有下划线,则可以使用以下宏。它搜索引号,当找到引号时,它会将所有内容加底线,直到下一个引号。请注意,它实际上不会在引号本身下划线。

Sub UnderlineQuoted()

Dim bDelQuotes As Boolean     Dim bMvRt As Boolean     Selection.HomeKey Unit:=wdStory

' controls deletion of quote marks     bDelQuotes = False          With Selection.Find         .ClearFormatting         .Text = Chr(34)

.Replacement.Text = ""

.Forward = True         .Wrap = wdFindStop         .Execute     End With

While Selection.Find.Found         Selection.MoveRight Unit:=wdCharacter, Count:=1         ' switch on selection extend mode         Selection.ExtendMode = True         bMvRt = True         ' find second quote of this pair         Selection.Find.Execute         If Selection.Find.Found Then             Selection.MoveLeft Unit:=wdCharacter, Count:=1             If Len(Selection.Range.Text) > 0 Then                 ' make it underlined                 Selection.Font.Underline = True                 ' delete quote marks, if appropriate                 If bDelQuotes Then                     Selection.Cut                     Selection.TypeBackspace                     Selection.Delete Unit:=wdCharacter, Count:=1                     Selection.Paste                     bMvRt = False                 End If             End If         End If         Selection.ExtendMode = False         If bMvRt Then             Selection.Collapse Direction:=wdCollapseEnd             Selection.MoveRight Unit:=wdCharacter, Count:=1         End If         Selection.Find.Execute     Wend End Sub

注意bDelQuotes变量的设置。如果设置为False(如此处所示),则引号本身不会被宏删除。如果将变量的值更改为True,则宏将摆脱文档中的引号。请注意,只有在这些引号之间的文本真正加下划线时,它才会删除引号。

注意:

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

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

(Microsoft Word是世界上最流行的文字处理软件。)本技巧(10473)适用于Microsoft Word 2007、2010、2013和2016。您可以在此处找到适用于Word较旧菜单界面的本技巧的版本: