フォームに入力した語句を強調する【素人 Word マクロ】
Microsoft officeのWordVBAでマクロを組みましたので公開します。
インターネットで検索したり、マクロの記録機能を使ったりしたのを組み合わせだけなので、上手くはないですが、一応動くはずです。
office2021です。
必ず、元データのバックアップを取ってから実行してください。
素人の作ったものなので、信用しすぎないでください。
[コード]
Sub 入力語句の強調表示()
Dim myRange As Range
Dim myKW As String
Dim myColor As String
myKW = InputBox("キーワードを入力してください。")
'キーワードが入力されない場合には終了
If myKW = "" Then Exit Sub
'現在の蛍光ペンの色を保存
myColor = Options.DefaultHighlightColorIndex
'蛍光ペンの色を黄色に設定
Options.DefaultHighlightColorIndex = wdYellow
'myRange(オブジェクト変数)を設定
Set myRange = ActiveDocument.Range(0, 0)
'一括置換を実行(「検索と置換」ダイアログボックスの設定)
With myRange.Find
.Text = myKW '検索する文字列
.Replacement.Text = "" '置換後の文字列(空欄でOK)
.Replacement.Highlight = True '置換後の文字列の蛍光ペンをオン
.Forward = True
.Wrap = wdFindStop
.Format = True '書式の設定をオン
.MatchCase = False '大文字と小文字の区別する
.MatchWholeWord = False '完全に一致する単語だけを検索する
.MatchByte = False '半角と全角を区別する
.MatchAllWordForms = False '英単語の異なる活用形を検索する
.MatchSoundsLike = False 'あいまい検索(英)
.MatchFuzzy = False 'あいまい検索(日)
.MatchWildcards = False 'ワイルドカードを使用する
.Execute Replace:=wdReplaceAll
End With
'蛍光ペンの色を元に戻す
Options.DefaultHighlightColorIndex = myColor
'myRangeを解放
Set myRange = Nothing
End Sub