![]() |
#16
|
|||
|
|||
![]()
if I set
Code:
objDoc.TrackRevisions = true my code also works with objDoc.TrackRevisions = false Code:
texte.Find.ClearFormatting texte.Find.Replacement.ClearFormatting texte.Find.MatchWildcards = True texte.Find.Execute FindText:="…([A-Za-zÀ-ÖØ-öø-ÿ0-9])", ReplaceWith:="… \1", Replace:=wdReplaceAll Code:
With texte 'pour "…[A-Z]" With .Find .Forward = True: .Wrap = wdFindStop: .MatchWildcards = True .Text = "…[A-Za-zÀ-ÖØ-öø-ÿ0-9]" End With Do While .Find.Execute = True .Text = "… " & Right(.Text, 1): .Collapse wdCollapseEnd Loop End With |
#17
|
||||
|
||||
![]()
You could, of course, use Word's built-in document compare feature without using track changes while running your code. The built-in document compare feature will generate a result equivalent to a document with track changes.
Alternatively, you would use something like: Code:
Sub Demo() Application.ScreenUpdating = False ActiveDocument.TrackRevisions = True With ActiveDocument.Range With .Find .ClearFormatting .Replacement.ClearFormatting .MatchWildcards = True .Text = "…[A-Za-zÀ-ÖØ-öø-ÿ0-9]" .Wrap = wdFindStop .Forward = True End With Do While .Find.Execute .Characters.First.InsertAfter " " .Collapse wdCollapseEnd Loop End With Application.ScreenUpdating = True End Sub
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#18
|
|||
|
|||
![]()
Thank you, it works very well (it's a bit like what I was proposing), but I find it cleaner and I'll adopt it, thank you. With this solution I'll be able to get around the problem with group captures when TrackRevisions is true.
Have a nice day! |
#19
|
|||
|
|||
![]()
Just to end this thread, here's the solution I've adopted:
- I no longer track modifications (.TrackRevisions = False) - in most cases, I simply process my corrections with or without MatchWildcards. - finally, I've created a procedure that compares the original files and those to which the punctuation correction has been applied. This creates a comparison file where the corrections are clearly highlighted. Thanks for your contributions! PS: I'd just like to remind you that this problem comes from an unhandled error in VBA. We can't track changes and use group captures correctly in our find/replace. |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
![]() |
Steve Kunkel | Word VBA | 7 | 04-22-2021 10:00 AM |
![]() |
jbvalen | Word VBA | 5 | 05-04-2017 05:03 PM |
![]() |
souravkp | Word VBA | 1 | 07-11-2015 09:34 PM |
![]() |
lordnacho | Outlook | 1 | 11-01-2010 06:05 PM |
time capturing | aligahk06 | Excel | 0 | 04-18-2010 11:53 PM |