Web、メール、印刷ドキュメントを作成するための Microsoft ワード プロセッシング ソフトウェア製品のファミリ。
こんにちは。
例えば下記のようなコードでExcelに出力することができます。
Public Sub Sample()
'ActiveDocumentの変更履歴をExcelに出力
Dim rv As Word.Revision
Dim i As Long
i = 2
With CreateObject("Excel.Application")
.Visible = True
With .Workbooks.Add
'見出し
.Worksheets(1).Cells(1, 1).Value = "ページ"
.Worksheets(1).Cells(1, 2).Value = "行"
.Worksheets(1).Cells(1, 3).Value = "タイプ"
.Worksheets(1).Cells(1, 4).Value = "テキスト"
For Each rv In ActiveDocument.Revisions
.Worksheets(1).Cells(i, 1).Value = rv.Range.Information(wdActiveEndPageNumber)
.Worksheets(1).Cells(i, 2).Value = rv.Range.Information(wdFirstCharacterLineNumber)
.Worksheets(1).Cells(i, 3).Value = GetRVTypeInfo(rv.Type)
.Worksheets(1).Cells(i, 4).Value = rv.Range.Text
i = i + 1
Next
End With
End With
End Sub
Private Function GetRVTypeInfo(ByVal rt As Word.WdRevisionType) As String
'変更履歴の種類を取得
Dim ret As String
Select Case rt
Case wdNoRevision: ret = "変更されていない箇所"
Case wdRevisionConflict: ret = "矛盾する変更"
Case wdRevisionDelete: ret = "削除"
Case wdRevisionDisplayField: ret = "フィールドの表示方法の変更"
Case wdRevisionInsert: ret = "挿入"
Case wdRevisionParagraphNumber: ret = "段落番号の変更"
Case wdRevisionParagraphProperty: ret = "段落のプロパティの変更"
Case wdRevisionProperty: ret = "プロパティの変更"
Case wdRevisionReconcile: ret = "矛盾が解決された変更"
Case wdRevisionReplace: ret = "置換"
Case wdRevisionSectionProperty: ret = "セクションのプロパティの変更"
Case wdRevisionStyle: ret = "スタイルの変更"
Case wdRevisionStyleDefinition: ret = "スタイルの定義の変更"
Case wdRevisionTableProperty: ret = "表のプロパティの変更"
Case Else: ret = "不明"
End Select
GetRVTypeInfo = ret
End Function
Excelの制御方法については「Excel オートメーション」や「CreateObject("Excel.Application")」
といったキーワードで検索すれば、参考になるWebページがヒットするかと思います。