Tom询问是否有一种配置Word的方法,以便它可以像WordPerfect一样在每个句点之后自动放置两个空格。有趣的是,每当出现关于句间距的问题时,我都会收到一连串的消息,表明两个空格是一个好主意,或者两个空格代表了差的形式。

在句子之间的间距时,我不会考虑什么是对还是错。坦率地说,有充分的理由进行这种间隔,也有充分的理由不进行这种间隔。 (汤姆,我相信您会根据自己的受过教育的决定,决定在这个时代是否真的需要一定的时间间隔后的两个空格。)

话虽如此,本技巧的目的是解释如何根据您喜欢的间距调整键入内容。 Word不提供WordPerfect中提供的“自动两个空格”设置。但是,您仍然可以做一些事情。

首先,您可以配置Word的语法检查器以标记任何与您的首选项不匹配的句子结尾。只需遵循以下步骤:

。从工具菜单中选择选项。 Word将显示“选项”对话框。

。确保显示了“拼写和语法”选项卡。 (请参见图1。)

。单击设置按钮。 Word将显示“语法设置”对话框。 (请参见图2。)

。使用“句子之间需要空格”下拉列表来指示您希望在句子之间使用多少空格。

。单击“确定”关闭“语法设置”对话框。

。单击“确定”关闭“选项”对话框。

现在,语法检查器将用绿色的波浪下划线标记所有不符合您的喜好的句子。然后,在标记上单击鼠标右键时,可以选择更正该事件的间距。

如果要批量替换句子的末尾间距,最好的办法是使用Word的搜索和替换功能。其他问题已经涵盖了实现此目的的技术。对于那些想要自动化使用搜索和替换过程的用户,以下VBA宏非常方便。它将用两个空格替换句子末尾的任意数目的空格:

Sub TwoSpaces()

Selection.Find.ClearFormatting     Selection.Find.Replacement.ClearFormatting     With Selection.Find         .Text = "([.\?\!]) {1,}"

.Replacement.Text = "\1  "

.Forward = True         .Wrap = wdFindContinue         .Format = False         .MatchWildcards = True     End With     Selection.Find.Execute Replace:=wdReplaceAll End Sub

如果要更改宏,以确保所有句子的末尾只有一个空格,则可以简单地更改.Replacement.Text行,以便替换字符串中只有一个空格。关于此宏的另一件事要注意的是,它会纠正所有以句点,问号或感叹号结尾的句子;它不会捕获并纠正任何以引号结尾的句子。

最后,以防万一,您不能有效地使用“自动更正”来更改句子结尾的间隔。为什么?因为自动更正使用空格字符作为信号来触发检查刚刚键入的内容。因此,自动更正条目不能使用空格,因此您不能使用自动更正来搜索后跟一个空格的句点并将其替换为后跟两个空格的句点。如果需要,可以使自动更正将每个键入的句点替换为一个句点,后跟两个空格,但这会导致一些非常奇怪的键入体验。

如果需要,请尝试一下,但是尝试后不久,您可能会删除“用句点和两个空格替换句点”条目。

注意:

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

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

(Microsoft Word是世界上最流行的文字处理软件。)本技巧(1820)适用于Microsoft Word 97、2000、2002和2003。您可以为Word(Word 2007)的功能区界面找到此技巧的版本。和更高版本)在这里: