【Word VBA】変更履歴の追記箇所に下線を引く(その2)

2012年6月20日

以前ご紹介いたしました「変更履歴の追記箇所に下線を引く」にいただきましたコメントから改良してみました。

ご助言をどうもありがとうございました。こうすれば、かなり応用がききますね。

このマクロでできること

変更履歴が記録された箇所に対して、文字列の入力、文字列の削除、それ以外の変更にわけて変更履歴の承諾をしながらマーキングをします。

文字列を入力した場合には、入力された文字に下線を引きます。

文字列を削除した場合には、削除された文字列の次の1文字に下線を引きます。

それ以外の変更(たとえば、書式変更)には、何もマーキングをしません。

 

(1)例として、以下の文章を用います

16-06-043

 

(2)変更履歴を記録しました

16-06-044

「あれは、自動車です。」として、「です」の部分のフォントの色を変更しました。

 

(3)マクロで処理をしました

16-06-045

書式変更した部分(フォントの色を変更した部分)には、下線でマーキングがされていません。

マクロの解説

hishiさんに教えていただいたとおり、Typeプロパティをしらべて、それぞれ別の処理をしています。

用途に応じて、処理を変えたらいいですね。

Typeプロパティの種類は、他にもたくさんありますので、必要な方はヘルプでご確認ください。

マクロ


Sub 変更履歴_追記箇所に下線をひくマクロ_2()

 Dim myRev As Revision

 For Each myRev In ActiveDocument.Revisions
  
  Select Case myRev.Type
   
   '挿入の場合
   Case wdRevisionInsert
    With myRev.Range
     .Font.Underline = wdUnderlineSingle
     .Revisions.AcceptAll
    End With
   
   '削除の場合
   Case wdRevisionDelete
    With myRev.Range
     .MoveEnd unit:=wdCharacter, Count:=1
     .Font.Underline = wdUnderlineSingle
     .Revisions.AcceptAll
    End With
    
   'それ以外の場合
   Case Else
    With myRev.Range
     .Revisions.AcceptAll
    End With
    
  End Select
  
 Next

 Set myRev = Nothing

End Sub

関連記事

変更履歴の追記箇所に下線を引くマクロ

変更履歴の追記箇所に下線を引くマクロ(その2)  (6/20/2012:改良版です!)

変更履歴の追記箇所に下線を引くマクロ(その3)  (3/18/2013:英文明細書の補正用)

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

マクロコードの登録方法

ツールバーのボタン登録

-コード
-,