在word中选中文本后按Ctrl+F,有些时候选中文本会自动出现在“查找内容”文本框中,而有些时候显示的还是上次选中的文本。
这是因为只有当Word认为选中的文本是一个“词”时,选中文本才会自动出现在“查找内容”中。
所以,为了查找某个文本,常常需要以下操作:
选中文本-->复制-->Ctrl+F-->粘贴-->回车(查找)。而且复制粘贴操作还会覆盖掉剪贴板原有的内容。
我们所希望的结果是无论选中的是什么,都能够直接进行查找。
利用如下宏可实现直接查找选中文本,选中文本-->自定义宏快捷键(我将其定义为Ctrl+D)2步即可!连查找对话框都省了。
【宏定义】
Sub Search_Select_Text()
Dim myText As String
If Selection.Start = Selection.End Then
myText = ""
Else
myText = Selection.Text
End If
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = myText
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = False
.MatchFuzzy = True
End With
Selection.Find.Execute
End Sub
【操作步骤】
*想要在所有文件中启用该宏需要更改启用宏的模板。
1.打开启用宏的模板(右键选择打开,不要双击):
xp: C:\Documents and Settings\Administrator\Application Data\Microsoft\Templates\Normal.dotm
win7: C:\Users\y00218871.CHINA\AppData\Roaming\Microsoft\Templates\Normal.dotm
C:\Windows\ShellNew\normal.dotm
2.选择“开发工具”->“VisualBaisic”
3.在导航栏中打开“Normal->Microsoft Word对象->ThisDocument”
4.将上述宏拷贝到编辑窗口中并保存
5.为宏Search_Select_Text添加快捷键
*可新建两个宏,一个正向查找一个反向查找(Ctrl+Shift+D)