View Single Post
 
Old 12-08-2023, 06:41 AM
gmaxey gmaxey is offline Windows 10 Office 2019
Expert
 
Join Date: May 2010
Location: Brasstown, NC
Posts: 1,617
gmaxey is just really nicegmaxey is just really nicegmaxey is just really nicegmaxey is just really nicegmaxey is just really nice
Default

Flag them as italic or bold or whatever then apply the appropriate character style and remove the flags.


Code:
Sub ScratchMacro()
'A basic Word Macro coded by Gregory K. Maxey
Dim oRng As Range
Dim oPar As Paragraph
  Set oRng = ActiveDocument.Range
  With oRng.Find
    .Font.Bold = True
    While .Execute
      oRng.Text = "<b>" & oRng.Text & "</b>"
      oRng.Collapse wdCollapseEnd
    Wend
  End With
  Set oRng = ActiveDocument.Range
  With oRng.Find
    .Font.Italic = True
    While .Execute
      oRng.Text = "<i>" & oRng.Text & "</i>"
      oRng.Collapse wdCollapseEnd
    Wend
  End With
  ActiveDocument.Range.Font.Reset
  For Each oPar In ActiveDocument.Paragraphs
    oPar.Style = "Body Text"
  Next
  Set oRng = ActiveDocument.Range
  With oRng.Find
    .Text = "(\<i\>\<b\>)(*)(\</b\>\</i\>)"
    .Replacement.Text = "\2"
    .Replacement.Style = "Emphasis"
    .MatchWildcards = True
    .Execute Replace:=wdReplaceAll
  End With
  Set oRng = ActiveDocument.Range
  With oRng.Find
    .Text = "(\<i\>)(*)(\</i\>)"
    .Replacement.Text = "\2"
    .Replacement.Style = "Subtle Emphasis"
    .MatchWildcards = True
    .Execute Replace:=wdReplaceAll
  End With
  Set oRng = ActiveDocument.Range
  With oRng.Find
    .Text = "(\<b\>)(*)(\</b\>)"
    .Replacement.Text = "\2"
    .Replacement.Style = "Strong"
    .MatchWildcards = True
    .Execute Replace:=wdReplaceAll
  End With
lbl_Exit:
  Exit Sub
End Sub
__________________
Greg Maxey
Please visit my web site at http://www.gregmaxey.com/
Reply With Quote