Replacing underlining and symbols problem

A

April

I am attempting to convert "greater than" and "less than" underlined symbols
to "greater than or equal to" and "less than or equal to" symbols in Word
2003. When I record a macro, the process works fine. It converts the
underlined greater/less than symbols to the correct one and leaves the not
underlined greater/less than symbols alone and gets rid of the underlining.
However, when I test the macro, it changes both the underlined symbol and the
not underlined symbol and converts it to the greater/less than or equal to
symbol, AND leaves the underlining. What can I do to ensure it only converts
the symbol that is underlined and leaves the not underlined symbol alone, and
gets rid of the underlining?

Here is the code the recorder came up with:

Sub Test11()
'
' Test11 Macro
' Macro recorded 3/27/2008 by nc6404
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ">"
.Replacement.Text = ChrW(8805)
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub


I've tried inserting some font.underline code to the mix, but that doesn't
work either:

Sub Test8()
'
' Test7 Macro Edit
' Macro recorded 3/27/2008 by nc6404
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ">"
.Font.Underline = wdUnderlineSingle
.Replacement.Text = ChrW(8805)
.Font.Underline = wdUnderlineNone
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub



Any ideas will be greatly appreciated.
 
G

grammatim

Wouldn't Find/Replace be a lot simpler? In the Find box type the > or
the <, and under More, go to Format Font and choose Underline. Or
simply press Ctrl-U. This will then find all and only the underlined
greater/less thans.

In the Replace box, type the symbol you need and press Ctrl-U once or
twice until Not Underline appears. (Or go through the More pane.)

Do "Find Next" and "Replace" once just to be sure, and then Replace
All.

Repeat for the other one -- you don't even have to retype the
formatting options.
 
J

Jay Freedman

In your Test8 macro, change the line

.Font.Underline = wdUnderlineNone

to

.Replacement.Font.Underline = wdUnderlineNone

The line you have now changes the formatting used for the .Text search term
(which is implied by the absence of any qualification of the .Font keyword),
where what you want is to change the formatting of the .Replacement.

--
Regards,
Jay Freedman
Microsoft Word MVP
Email cannot be acknowledged; please post all follow-ups to the newsgroup so
all may benefit.
 
A

April

That worked great! Thanks!

And we need to do this in a macro primarily because we've got a few hundred
documents to edit. :)

Thanks!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top