Words 集合对象

         
多种对象
Words
Range

该对象为所选内容、区域或文档中的单词组成的集合。Words 集合中的每一项均为代表一个单词的 Range 对象。不存在 Word 对象。

使用 Words 集合

使用 Words 属性可返回 Words 对象。下列示例显示当前选定的单词数。

MsgBox Selection.Words.Count & " words are selected"

使用 Words(index) 可以返回代表一个单词的 Range 对象,其中 index 为索引序号。索引序号表示单词在 Words 集合中的位置。下列示例将所选内容中第一个单词的格式设为 24 磅倾斜。

With Selection.Words(1)
    .Italic = True
    .Font.Size = 24
End With

Words 集合中的项目同时包含单词及单词后的空格。使用 Visual Basic 的 RTrim 函数可删除单词后的空格,例如,RTrim(ActiveDocument.Words(1))。下列示例选定活动文档中的第一个单词(及单词后的空格)。

ActiveDocument.Words(1).Select

说明

如果所选内容为插入点,且后面紧跟一个空格,则 Selection.Words(1) 指所选内容前面的单词。如果所选的为插入点且后面紧跟一个字符,则 Selection.Words(1) 指所选内容后面的单词。

文档中该集合的 Count 属性仅返回正文部分的项目数。若要计算其他部分的项目数,可使用 Range 对象的集合。Count 属性的值同样包括全部标点符号和段落标记。如果需要准确计算文档中的单词数,可使用“字数统计”对话框。下列示例检索活动文档中的单词数并将该值赋给变量 numWords

Set temp = Dialogs(wdDialogToolsWordCount)
' Execute the dialog box in order to refresh its data.
temp.Execute
numWords = temp.Words

有关调用内置对话框的详细信息,请参阅显示内置 Word 对话框

Add 方法在 Words 集合中无效。但使用 InsertAfter 方法或 InsertBefore 方法可将文本添至 Range 对象。下列示例在活动文档的第一个单词后面插入文本。

ActiveDocument.Range.Words(1).InsertAfter "New text "