VBA中查并选定⽂字
如果从 Selection 对象访问 Find 对象,当到搜索条件时,就会更改所选内容。下列⽰例选定下⼀个出现的“Hello”。如果到达⽂档结尾时仍未到“Hello”,则停⽌搜索。
With Selection.Find
.Forward = True
.Wrap = wdFindStop
.Text = "Hello"
.Execute
End With
Find 对象包含与“查和替换”对话框中的选项相关的属性(在“编辑”菜单上选择“查”可显⽰该对话框)。可以设置 Find 对象单独的属性或使⽤ Execute ⽅法的参数,如下例所⽰。
Selection.Find.Execute FindText:="Hello", _
Forward:=True, Wrap:=wdFindStop
查⽂字,但不更改所选内容
如果从 Range 对象访问 Find 对象,则到搜索条件时,不更改所选内容,但是会重新定义 Range 对象。下列⽰例在活动⽂档中查第⼀个出现的“blue”。如果到该单词,则重新定义该区域,并将加粗格式应⽤于单词“blue”。
With ActiveDocument.Content.Find
.Text = "blue"
.Forward = True
.Execute
If .Found = True Then .Parent.Bold = True
End With
下列⽰例使⽤ Execute ⽅法的参数,执⾏结果与上例相同。
find查命令的使用Set myRange = ActiveDocument.Content
myRange.Find.Execute FindText:="blue", Forward:=True
If myRange.Find.Found = True Then myRange.Bold = True
使⽤ Replacement 对象
Replacement 对象代表查和替换操作的替换条件。Replacement 对象的属性和⽅法对应于“查和替换”对话框中的选项(单击“编辑”菜单中的“查”或“替换”命令可显⽰该对话框)。
可通过 Find 对象使⽤ Replacement 对象。下列⽰例将所有单词“hi”替换为“hello”。由于 Find 对象是通过 Selection 对象访问的,所以当到搜索条件时,会更改所选内容。
With Selection.Find
.ClearFormatting
.Text = "hi"
.Replacement.ClearFormatting
.Replacement.Text = "hello"
.Execute Replace:=wdReplaceAll, Forward:=True, _
Wrap:=wdFindContinue
End With
下列⽰例取消活动⽂档中的加粗格式。Find 对象的 Bold 属性为 True,⽽ Replacement 对象的该属性为 False。若要查并替换格式,可将查和替换⽂字设为空字符串 (""),并将 Execute ⽅法的 Format 参数设为 True。由于从 Range 对象访问 Find 对象,所选内容将保持不变(Content 属性返回⼀个 Range 对象)。
With ActiveDocument.Content.Find
.ClearFormatting
.Font.Bold = True
With .Replacement
.
ClearFormatting
.Font.Bold = False
End With
.Execute FindText:="", ReplaceWith:="", _
Format:=True, Replace:=wdReplaceAll
End With

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。