Clear Formatting for a Range, Not the Selection

Clear Formatting for a Range, Not the Selection

The ClearFormatting method only works with the Selection object. Can I clear formats of a range without losing the selection, and ideally without caching it and calling Select. I'd like to clear formats for a Range

I've tried some combinations of Find/Replace, e.g.

Sub ClearFormat(ByVal doc As Document)
    'doc.Content.Find.ClearFormatting  'WdStoryType.wdMainTextStory
    Dim target As Range
    Set target = doc.Content
    With target.Find
        .Replacement.Font.Name = "Regular" 'hoping this will reset to my normal style
        .MatchWildcards = True
        .Execute "*", Replace:=wdReplaceAll
    End With
End Sub

And also setting the whole document style to the "Normal" style, but no joy

1

1 Answer

For example:

With ActiveDocument.Range
  .ParagraphFormat.Reset
  .Font.Reset
End With

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Robert Thorne
Author

Robert Thorne

Robert Thorne covers electric vehicle innovations, autonomous driving systems, global mobility trends, and automotive engineering developments.