计算更改的单词(Microsoft Word)
史蒂文一直在他的文档中使用Track Changes。他需要一种方法来仅计算文档中已更改的单词(那些受“曲目更改”影响的单词)。
如果您使用的是Word的较早版本(Word 2003之前的版本),则可以使用此方法。在“查找”框中,如果您按Ctrl + N,则Word将仅查找“新”单词…,即“跟踪的更改”。然后,您可以自己替换这些“单词”(在“替换为”框中使用^&)并获得替换的计数。
如果您使用的是Word 2003,则由于Word跟踪和显示更改方式的更改,该功能不再存在。在这种情况下,您将需要使用宏来显示所需的信息。以下是您可以使用的宏示例:
Sub GetTCStats() Dim lInsertsWords As Long Dim lInsertsChar As Long Dim lDeletesWords As Long Dim lDeletesChar As Long Dim sTemp As String Dim oRevision As Revision lInsertsWords = 0 lInsertsChar = 0 lDeletesWords = 0 lDeletesChar = 0 For Each oRevision In ActiveDocument.Revisions Select Case oRevision.Type Case wdRevisionInsert lInsertsChar = lInsertsChar + Len(oRevision.Range.Text) lInsertsWords = lInsertsWords + oRevision.Range.Words.Count Case wdRevisionDelete lDeletesChar = lDeletesChar + Len(oRevision.Range.Text) lDeletesWords = lDeletesWords + oRevision.Range.Words.Count End Select Next oRevision sTemp = "Insertions" & vbCrLf sTemp = sTemp & " Words: " & lInsertsWords & vbCrLf sTemp = sTemp & " Characters: " & lInsertsChar & vbCrLf sTemp = sTemp & "Deletions" & vbCrLf sTemp = sTemp & " Words: " & lDeletesWords & vbCrLf sTemp = sTemp & " Characters: " & lDeletesChar & vbCrLf MsgBox sTemp End Sub
此宏逐步浏览当前文档中的每个更改,并分别对插入和删除操作的字数和字符数求和。然后将统计信息显示在消息框中。请注意,宏将查看Words集合中文档中的每个更改。
您应该了解,此处显示的字数是一个近似值。这是因为单词计数的方式。例如,加法中的每个标点符号都算作一个单独的单词。这意味着诸如“正如人们所见,这是一个好方法”之类的短语将被计为十个单词而不是九个单词(逗号作为一个单独的单词)。此外,如果您添加的词组包含一个前导空格(插入经常会出现这种情况),则由于该空格,将有十一个单词要插入。
注意:
如果您想知道如何使用此页面(或_WordTips_网站上的任何其他页面)上描述的宏,我准备了一个包含有用信息的特殊页面。
_WordTips_是您进行经济有效的Microsoft Word培训的来源。
(Microsoft Word是世界上最流行的文字处理软件。)本技巧(1095)适用于Microsoft Word 97、2000、2002和2003。您可以在Word(Word 2007)的功能区界面中找到此技巧的版本。和更高版本)在这里: