【ワードマクロ】特定の文字を蛍光ペンで着色する超具体的な使用例

ワードマクロ:文字に蛍光ペンをつけるアイキャッチ ワードマクロで効率化する

ワードマクロで、特定の文字を蛍光ペンで着色するVBAコードをご紹介します。

以下のような作業でお困りはありませんか?

・特定の文字を目立たせたい
・文字によって違う色のマーカーをつけたい

このページのマクロコードは、コピペで使えます。
ぜひ、お試しください!

特定文字を蛍光ペンで着色(変数使用)

以下のWordVBAを実行すると、対象文字を蛍光ペンで着色します。


Sub 蛍光ペンで着色1()

  Dim Target As String
 
  '対象文字を格納
  Target = "会員"

  With Selection.Find
    
    '置換後の文字列の蛍光ペンをオン
    .Replacement.Highlight = True
            
    '蛍光ペンの色を黄色に指定
     Options.DefaultHighlightColorIndex = wdYellow
        
    .Text = Target
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindContinue
    .Format = True
    .MatchCase = False
    .MatchWholeWord = False
    .MatchByte = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = False
    .MatchFuzzy = False
        
    '蛍光ペンで着色を実行
    .Execute Replace:=wdReplaceAll
        
  End With

End Sub

マクロ実行前

ファイル内の「会員」という文字を、蛍光ペンで着色する前

 

マクロ実行後

[Target] に格納した文字「会員」を、蛍光ペンで着色します。

 

VBAコードの解説

[Target = “会員”] は、
蛍光ペンで着色したい文字を[Target]に格納します。
今回は、文字列を格納することを想定しているため [Target] は [String] 型にしています。

[.Replacement.Highlight = True] は、
置換後の文字列の蛍光ペンをオンに設定します。
このコードを記述していない場合、[Target]に格納した文字が空欄で置換されて消えてしまい、
蛍光ペンもつかない場合があるので、必ず入れます。

[Options.DefaultHighlightColorIndex = wdYellow] は、
蛍光ペンの色を黄色に指定します。
今回は黄色に指定していますが、違う色にも設定可能です。
 

特定文字を蛍光ペンで着色(配列使用)

以下のWordVBAを実行すると、複数文字を蛍光ペンで着色します。


Sub 蛍光ペンで着色()

    Dim Target As Variant
    Dim i As Long

    '対象文字を格納
    Target = Array("会員", "一般", "ゴールド")
    
    For i = 0 To 2
    
        With Selection.Find
        
          '置換後の文字列の蛍光ペンをオン
          .Replacement.Highlight = True
        
          '蛍光ペンの色を黄色に指定
           Options.DefaultHighlightColorIndex = wdYellow
        
          .Text = Target(i)
          .Replacement.Text = ""
          .Forward = True
          .Wrap = wdFindContinue
          .Format = True
          .MatchCase = False
          .MatchWholeWord = False
          .MatchByte = False
          .MatchAllWordForms = False
          .MatchSoundsLike = False
          .MatchWildcards = False
          .MatchFuzzy = False
        
          '蛍光ペンで着色を実行
          .Execute Replace:=wdReplaceAll
        
        End With
        
    Next i

End Sub

マクロ実行前

蛍光ペンで着色する前

 

マクロ実行後

[Target] に格納した複数文字を、蛍光ペンで着色します。

 

特定文字を蛍光ペンで着色(ダイヤログボックス使用)

以下のWordVBAを実行すると、ダイヤログボックスに入力した文字を蛍光ペンで着色します。


Sub 蛍光ペンで着色2()

  Dim GetKW As String
  Dim InputKW As String
    
  InputKW = "文字を入力してください"
    
  'ダイヤログボックスに対象文字を入力
  GetKW = InputBox(InputKW)
    
  If GetKW = "" Then
      Exit Sub
  Else
    
    '蛍光ペンの色を黄色に指定
     Options.DefaultHighlightColorIndex = wdYellow
    
    '蛍光ペンで着色する文字の条件を指定
     With Selection.Find
        
     '置換語の文字列の蛍光ペンをオン
      .Replacement.Highlight = True

      .Text = GetKW
      .Replacement.Text = ""
      .Forward = True
      .Wrap = wdFindContinue
      .Format = True
      .MatchCase = False
      .MatchWholeWord = False
      .MatchByte = False
      .MatchAllWordForms = False
      .MatchSoundsLike = False
      .MatchWildcards = False
      .MatchFuzzy = False
            
      '蛍光ペンで着色を実行
      .Execute Replace:=wdReplaceAll

     End With

    End If

End Sub

マクロ実行前

マクロ実行後

ダイヤログボックスが表示されるので、蛍光ペンをつけたい文字を手入力し、
「OK」をクリックします。

 

ダイヤログボックスに入力した「ゴールド」を蛍光ペンで着色します。

 

VBAコードの解説

ダイヤログボックスに何も入力しなかった場合は、
「If GetKW = “” Then」の IF判定は [False] になり、
[Exit Sub] でサブプロシージャを終了します。

 

特定文字を蛍光ペンで着色(SelectCase使用)

以下のWordVBAを実行すると、
ダイヤログボックスに入力した文字を、指定した蛍光ペンの色で着色します。


Sub 蛍光ペンで着色3()

  Dim GetKW As String
  Dim InputKW As String
    
  InputKW = "文字を入力してください"
   
  '文字を入力するダイヤログボックスを表示
  GetKW = InputBox(InputKW)
    
  If GetKW = "" Then
      Exit Sub
  Else
        
  With Options
        
    Select Case GetKW
      Case "ゴールド"
       '蛍光ペンの色を赤色に指定
        .DefaultHighlightColorIndex = wdRed
       Case "一般"
        '蛍光ペンの色を青色に指定
        .DefaultHighlightColorIndex = wdTurquoise
       Case Else
        '蛍光ペンの色を黄色に指定
        .DefaultHighlightColorIndex = wdYellow
     End Select
       
   End With
        
   '蛍光ペンで着色する文字の条件を指定
   With Selection.Find
        
    '置換語の文字列の蛍光ペンをオン
     .Replacement.Highlight = True

    .Text = GetKW
     .Replacement.Text = ""
     .Forward = True
     .Wrap = wdFindContinue
     .Format = True
     .MatchCase = False
     .MatchWholeWord = False
     .MatchByte = False
     .MatchAllWordForms = False
     .MatchSoundsLike = False
     .MatchWildcards = False
     .MatchFuzzy = False
            
     '蛍光ペンで着色を実行
     .Execute Replace:=wdReplaceAll
            
   End With

 End If

End Sub

マクロ実行前


 

マクロ実行後

ダイヤログボックスに入力した文字によって、蛍光ペンの色を変えています。
すでに違う色の蛍光ペンが塗られている場合は、マクロで指定した色に塗り替えられます。


 

VBAコードの解説

[Select Case GetKW]~[End Select] は、
ダイヤログボックスに入力した文字を、以下のように着色します。
・「ゴールド」の場合は赤色
・「一般」の場合は青色
・それ以外の場合は黄色

 

【ワードマクロ】文字色を一括で変更:4つの使用例を紹介するよ
...