处理 Selection 对象

   

用 Word 处理文档时,通常先选定文字,然后对所选内容进行操作,例如设置文字格式或键入文字。在 Visual Basic 中,通常不需要在修改文字前选定文字。而是创建一个引用文档中指定区域的 Range 对象。有关定义 Range 对象的信息,请参阅处理 Range 对象。但是,如果希望代码响应或更改所选内容,可使用 Selection 对象。

Select 方法可激活一个对象。例如,下列指令选定活动文档中的第一个单词。

Sub SelectFirstWord()
    ActiveDocument.Words(1).Select
End Sub

详细信息,请参阅在文档中选定文字

Selection 属性返回一个 Selection 对象,该对象代表文档窗口的窗格中活动的所选内容。文档窗口的每个窗格中只能有一个 Selection 对象,并且只能有一个活动的 Selection 对象。例如,下列示例更改所选内容中的段落格式。

Sub FormatSelection()
    Selection.Paragraphs.LeftIndent = InchesToPoints(0.5)
End Sub

例如,下列示例在所选内容后插入单词“Hello”。

Sub InsertTextAfterSelection()
    Selection.InsertAfter Text:="Hello "
End Sub

下列示例对选定的文字应用加粗格式。

Sub BoldSelectedText()
    Selection.Font.Bold = True
End Sub

宏录制器会经常创建使用 Selection 属性的宏。下列示例是宏录制器创建的。该宏对文档中的前两个单词应用加粗格式。

Sub Macro()
    Selection.HomeKey Unit:=wdStory
    Selection.MoveRight Unit:=wdWord, Count:=2, Extend:=wdExtend
    Selection.Font.Bold = wdToggle
End Sub

下列示例在不使用 Selection 属性的情况下完成相同的任务。

Sub WorkingWithRanges()
    ActiveDocument.Range(Start:=0, _
        End:=ActiveDocument.Words(2).End).Bold = True
End Sub