Word VBA教程:Execute方法

应用于 Find对象的 Execute方法。

运行指定的查找操作。如果查找成功,则返回 True。Boolean 类型。

expression.Execute(FindText, MatchCase, MatchWholeWord, MatchWildcards, MatchSoundsLike, MatchAllWordForms, Forward, Wrap, Format, ReplaceWith, Replace, MatchKashida, MatchDiacritics, MatchAlefHamza, MatchControl)

expression  必需。该表达式返回 Find对象。

FindText  Variant 类型,可选。指定需搜索的文本。可用空字符串 ("") 搜索格式,也可通过指定相应的字符代码搜索特殊字符。例如,“^p”对应段落标记,“^t”对应制表符。有关可以使用的特殊字符列表,请参阅查找和替换文本或其他项

MatchCase  Variant 类型,可选。如果为 True,则指定查找文本区分大小写。相当于“编辑”菜单“查找和替换”对话框中的“区分大小写”复选框。

MatchWholeWord  Variant 类型,可选。如果为 True,则查找操作只定位于完全匹配的单词,而并非长单词中的部分文字。相当于“查找和替换”对话框中的“全字匹配”复选框。

MatchWildcards  Variant 类型,可选。如果为 True,则查找的文字包含特殊搜索操作符。相当于“查找和替换”对话框中的“使用通配符”复选框。

MatchSoundsLike  Variant 类型,可选。如果为 True,则查找操作定位于与要查找的文字发音相近的单词。相当于“查找和替换”对话框中的“同音”复选框。

MatchAllWordForms  Variant 类型,可选。如果为 True,则查找操作定位于要查找的文字的所有形式(例如,查找“sit”的同时,还查找“sitting”和“sat”),相当于“查找和替换”对话框中的“查找单词的各种形式”复选框。

Forward  Variant 类型,可选。如果为 True,则向下(向文档尾部)搜索。

Wrap  Variant 类型,可选。如果搜索从不是文档的起始位置开始,并已搜索到文档的末尾(如 Forward 设置为 False,则相反),用本参数控制接下来的操作。当存在选定内容或区域,而又没有在该选定内容或区域中找到搜索文字时,也可用本参数控制接下来的操作。可取下列WdFindWrap 常量之一。

WdFindWrap 可以是下列 WdFindWrap 常量之一:
wdFindAsk 搜索完选定内容或者区域后,Microsoft Word 会显示一条消息,询问是否搜索文档的其他部分。
wdFindContinue 到达搜索区域的开始或者结尾时,继续执行查找操作。
wdFindStop 到达搜索区域的开始或者结尾时,停止执行查找操作。

Format  Variant 类型,可选。如果为 True,则查找操作定位于格式或带格式的文本,而不是查找文本。

ReplaceWith  Variant 类型,可选。替换文字。若要删除由 Find参数指定的文字,可使用空字符串 ("")。与 Find参数相似,本参数也可以指定特殊的字符和高级搜索条件。若要将图形对象或者其他非文本项指定为替换内容,可将这些项置于“剪贴板”上,然后将 ReplaceWith 指定为“^c”。

Replace  Variant 类型,可选。指定执行替换的个数:一个、全部或者不替换。可取下列WdReplace 常量之一。

WdReplace 可以是下列 WdReplace 常量之一:
wdReplaceAll
wdReplaceNone
wdReplaceOne

MatchKashida  Variant 类型,可选。如果为 True,则查找结果应与阿拉伯语文档中区分 kashidas 的文本相匹配。由于选择或安装的语言支持不同(例如,英语(美国)),此参数可能不可用。

MatchDiacritics  Variant 类型,可选。如果为 True,则查找操作在从右向左的语言的文档中按照匹配音调符号来匹配文字。由于选择或安装的语言支持不同(例如,英语(美国)),此参数可能不可用。

MatchAlefHamza  Variant 类型,可选。如果为 True,则在阿拉伯语文档中,查找内容应与区分 Alef Hamzas 的文本相匹配。由于选择或安装的语言支持不同(例如,英语(美国)),此参数可能不可用。

MatchControl  Variant 类型,可选。如果为 True,则在从右向左的语言的文档中,查找内容应与区分双向控制字符的文本相匹配。由于选择或安装的语言支持不同(例如,英语(美国)),此参数可能不可用。

说明

如果 MatchWildcards 为 True,可为 FindText参数指定通配符和其他高级搜索准则,例如,“*(ing)”查找任何以“ing”结尾的单词。

若要搜索符号字符,可键入脱字符号 (^)、零 (0),然后键入符号字符的代码。例如,“^0151”对应一条长划线 (—)。

除非另外指定,否则替换文本将沿用文档中被替换文本的格式。例如,如果用“xyz”替换字符串“abc”,那么加粗“abc”将被加粗字符串“xyz”所替换。

另外,如果 MatchCase 为 False,那么查找到的大写文本将被大写的替换文本替换,而无论搜索文本和替换文本是否大小写。上例中,“ABC”将被“XYZ”替换。

应用于 Dialog 和 KeyBinding对象的 Execute方法。

对于 Dialog对象:应用 Microsoft Word对话框的当前设置。

对于 KeyBinding对象:运行与指定的组合键相关的命令。

expression.Execute

expression   必需。该表达式返回以上一个对象。

应用于 MailMerge对象的 Execute方法。

执行指定的邮件合并操作。

expression.Execute(Pause)

expression   必需。该表达式返回以上一个对象。

Pause  Variant 类型,可选。如果为 True,则会在找到一个邮件合并错误时,暂停 Microsoft Word 的运行并显示一个疑难解答对话框;如果为 False,则会报告新文档中的错误。

VBA示例

当应用于 Find对象时。

本示例查找并选择下一个“library”。


With Selection.Find
    .ClearFormatting
    .MatchWholeWord = True
    .MatchCase = False
    .Execute FindText:="library"
End With

本示例在活动文档中查找所有的“hi”,并且将其替换为“hello”。


Set myRange = ActiveDocument.Content
myRange.Find.Execute FindText:="hi", _
    ReplaceWith:="hello", Replace:=wdReplaceAll

当应用于 Dialog对象时。

下面的示例激活“段落”对话框的“换行和分页”选项卡中的“与下段同页”复选框。


With Dialogs(wdDialogFormatParagraph)
    .KeepWithNext = 1
    .Execute
End With

当应用于 KeyBinding对象时。

本示例将 Ctrl+Shift+C 组合键指定给 FileClose 命令,然后执行这个组合键(关闭当前文档)。


CustomizationContext = ActiveDocument.AttachedTemplate
Keybindings.Add KeyCode:=BuildKeyCode(wdKeyControl, _
    wdKeyShift, wdKeyC), KeyCategory:=wdKeyCategoryCommand, _
    Command:="FileClose"
FindKey(BuildKeyCode(wdKeyControl, wdKeyShift, wdKeyC)).Execute

当应用于 MailMerge对象时。

如果活动文档是一个带有附加数据源的主文档,则本示例执行邮件合并。


Set myMerge = ActiveDocument.MailMerge
If myMerge.State = wdMainAndDataSource Then MyMerge.Execute

Word VBA教程

Word VBA参考教程:目录1 Word VBA参考教程:目录2
Word VBA参考教程:目录3 Word VBA参考教程:目录4
Word VBA参考教程:目录5 Word VBA参考教程:目录6
Word VBA参考教程:目录7 Word VBA参考教程:目录8
Word VBA参考教程:目录9 Word VBA参考教程:目录10
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号