前回のマクロは、文書全体を検索対象としていました。
今回のマクロは、文書の末尾まで検索したら、いったん以下のメッセージを出して、検索をとめます。
![みんなのワードマクロ](https://stat.ameba.jp/user_images/20110428/22/gidgeerock/58/c6/p/t02200070_0452014411193125038.png?caw=800)
[はい(Y)]ボタンをクリックすれば、文書の先頭から検索が再開されます。
▼マクロ
Sub Search_Text_2()
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 = wdFindAsk
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = False
.MatchFuzzy = True
End With
Selection.Find.Execute
End Sub
▼解説
上記の青文字部分を変更しました。
この部分の設定により、以下のように検索方法が変化します。
.Wrap = wdFindAsk
文書の末尾で検索をいったんとめて、検索を続けるか否かを質問します。Find したあと、Askですね。
.Wrap = wdFindStop
文書の末尾で検索を終了します。
.Wrap = WdContinue
文書の末尾に来たら、続けて先頭から検索を再開します。
目的に応じて使い分けてみてください。
▼関連記事
選択されている文字列を文書内で検索するマクロ
マクロコードの登録方法