我希望在审核后从word文档中提取插入和删除的文本。我已经能够使用以下宏提取注释:
Sub ExportComment()
Dim s As String
Dim cmt As Word.Comment
Dim doc As Word.Document
Dim workBk As Word.Document
Set workBk = ActiveDocument
Set doc = Documents.Add(Visible:=True)
Dim myRange As Range
Set myRange = doc.Range(0, 0)
Dim myTable As Table
Set myTable = doc.Tables.Add(Range:=myRange, NumRows:=workBk.Comments.Count, NumColumns:=6)
Dim i As Integer
i = 1
For Each cmt In workBk.Comments
myTable.Cell(i, 1).Range.Text = cmt.Index
myTable.Cell(i, 2).Range.Text = cmt.Scope.Information(wdActiveEndPageNumber)
myTable.Cell(i, 3).Range.Text = cmt.Initial
myTable.Cell(i, 4).Range.Text = cmt.Scope
myTable.Cell(i, 5).Range.Text = cmt.Range.Text
i = i + 1
Next
End Sub
但似乎无法弄清楚如何从跟踪的更改中获取插入和删除的文本。有什么想法吗?
谢谢!
答案 0 :(得分:1)
就像您在示例代码中使用Comments
集合一样,您将需要使用Revisions
集合(例如,Dim rev as Word.Revision
)。与Comments
不同,Revisions
具有Type属性,您可以使用它来标识不同类型的Track Changes。以下是一些修订类型:
如果要查看提取修订版的示例VBA代码,请转到
http://www.thedoctools.com/downloads/basTrackChanges_Extract.shtml
在讨论提取修订版的问题时在下面的页面中引用:
http://www.thedoctools.com/index.php?show=mt_trackchanges_extract