キーワードの含まれる文章に下線をつけるマクロ(その2) | みんなのワードマクロ

みんなのワードマクロ

ワードマクロで、文書作成とオフィス事務を効率化!!

キーワードの含まれる文章に下線をつけるマクロ を以前ご紹介しましたが、同じプログラムの中に、変数を追加して複数のキーワードに対して下線をつけられるようにしてみました。


私は、英文特許明細書の内容を把握するための支援に使っています。

もともと目でキーワードをひろって、蛍光ペンで色つけをしていたのですが、その作業を自動化してみました。

いらないところまで拾いますが、ざっと全体像を把握するのには役に立つのではないでしょうか?

あくまでも「支援」なので、自分がおいしいと思うところだけもらえればいいかなと思っています。




▼このマクロでできること
今回のマクロでは4つのキーワードを入力しています。

キーワードと言っても、英単語の文字の一部も含まれます。

 myKW(1) = "advantage"
 myKW(2) = "effect"
 myKW(3) = "improv"
 myKW(4) = "achiev"


このキーワードが含まれる文章の下線を引きます。




▼マクロの解説
myKW()という変数にキーワードを格納しています。

この変数を11個(myKW(0)~myKW(10))定義していますが、実際に入力しているのは4つです。

検索条件を指定していないので、単語の一部を記入して、部分一致の単語も拾えるようにしています。

Do...Loop ステートメントにて、キーワードが見つかる間、処理を続けています。




▼マクロ
Sub キーワードを含む文章をアンダーライン()
 Dim myRange As Range
 Dim myKW(10) As String
 Dim i As Integer
 
 myKW(1) = "advantage"
 myKW(2) = "effect"
 myKW(3) = "improv"
 myKW(4) = "achiev"
 
 '本文中の文字列をオブジェクトに設定
 Set myRange = ActiveDocument.Content
 
 'myKWの数だけ繰り返す(10回)
 For i = 1 To UBound(myKW)
 
  '毎回、先頭から検索開始
  myRange.SetRange Start:=0, End:=0
 
  With myRange.Find
   .Text = myKW(i)
   .Forward = True
   .Wrap = wdFindStop
 
   Do While .Execute = True
    With myRange
    .Expand Unit:=wdSentence
    .Underline = wdUnderlineSingle
    .Collapse direction:=wdCollapseEnd
    End With
   Loop
 
  End With
 
 Next i
 
Set myRange = Nothing
 
End Sub




▼関連記事
キーワードの含まれる文章に下線をつけるマクロ

初めての方へ(ブログの目次)  

マクロコードの登録方法

ツールバーのボタン登録