word マクロ 変更履歴を反映 (複数ファイル)
やりたいこと
複数のドキュメントを読み込み, 変更履歴のすべての変更を反映させたい
方針
【前提条件】
対象となるファイルパスはあらかじめ取得済みとする
【方針】
- 対象となるファイルパスを読み込み
- ドキュメントを開く
- 変更履歴を反映
- ドキュメントを保存
- ドキュメントを閉じる
- 2-5 を対象のファイルだけ行う
実装
Sub AcceptAll() Dim str As String Dim arr As Variant Dim arrs As Variant Dim doc As Document str = ActiveDocument.StoryRanges(wdMainTextStory).Text arrs = Split(str, vbCr) For Each arr In arrs Set doc = Documents.Open(arr) doc.Revisions.AcceptAll doc.Save doc.Close Next End Sub
実行方法
- 上記で実装したマクロを保存する
- 対象のファイルパスをマクロを保存したドキュメントに張り付ける
- 実装したマクロを実行する
注意点
オブジェクト型の変数は設定されていません (エラー 91) が出る
とはいえ目的は果たされていたので現状無視