PDA

View Full Version : Excluding punctuation characters from tracked changes counts



jaques21
07-02-2021, 08:32 AM
Hi all,


I have been working with the below macro for some time. The macro calculates the number of words inserted and deleted when using tracked changes. However, in the last few days, I've noticed that it was quite over-sensitive and recognise punctuation characters too, whereas I'm looking to count just whole words. I've tried to amend the coding, but I'm non-the-wiser. Would anyone have any words of advice?



Sub GetTCStats()
'
' GetTCStats Macro


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

SamT
07-04-2021, 05:53 PM
What does this return?

For Each oRevision In ActiveDocument.Revisions
x = oRevision.Range

Press F2 in VBA to browse all objects and their properteies.

jaques21
07-05-2021, 12:29 AM
Thanks SamT. I did that. Is this what you were guiding me to?

28699

SamT
07-05-2021, 05:01 AM
:dunno I think I am pretty good with VBA, but I really don't know Word. I'm just trying to give some VBA hints, you will have to work out what works,