
Tips.Net > WordTips Home > Formatting > Character Formatting > Underlining Section References Automatically
Summary: If you have a document that has some sort of keyword within it (such as “Section”) you may want to automatically format that keyword in some way. This tip addresses just such a situation, and shows how you can apply the formatting you need. (This tip works with Microsoft Word 97, Word 2000, Word 2002, Word 2003, and Word 2007.)
Agnes asked if there is a way to automatically underline all instances of the word "Section" and any ancillary information following the word. For example, a document might contain text such as "Section 2.3(b)(i)" or "Section 5.21" or "Section 12.12(a)" and Agnes wants to find this text and have it all be underlined.
There are a couple of things to try. First of all, you could do a standard Find and Replace, but only if you can somehow make the text a little more "standard." Without some sort of a pattern that can be matched, it is virtually impossible to do a Find and Replace that will find all possible instances of the text.
A possibility, however, is to record a macro that does look at all the possibilities. It wouldn't necessarily be a simple macro, as it would need to find the word "Section" followed immediately by a space, a digit, a period, more digits, and then (optionally) everything up to and including a closing parenthesis. That is quite a bit of text analysis that needs to occur.
The place to start is with a wildcard search. The following search phrase will find the word Section followed by a "number dot number" pattern:
Section [0-9]{1,}.[0-9]{1,}
If this search pattern is used in a macro, then the macro can, after each successful find of the text, start expanding what was found and see if it contains parenthetical characters. The following macro will perform this task.
Sub ULWords()
Selection.Find.ClearFormatting
With Selection.Find
.Text = "Section [0-9]{1,}.[0-9]{1,}"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = True
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute
While Selection.Find.Found
Selection.MoveRight Unit:=wdCharacter, _
Count:=1, Extend:=wdExtend
While Right(Selection.Text, 1) = "("
Selection.MoveRight Unit:=wdCharacter, _
Count:=1, Extend:=wdExtend
While Right(Selection.Text, 1) <> ")"
Selection.MoveRight Unit:=wdCharacter, _
Count:=1, Extend:=wdExtend
Wend
Selection.MoveRight Unit:=wdCharacter, _
Count:=1, Extend:=wdExtend
Wend
Selection.MoveRight Unit:=wdCharacter, _
Count:=-1, Extend:=wdExtend
Selection.Font.Underline = True
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.Find.Execute
Wend
End Sub
Note that the macro uses a wildcards search at the beginning to find all instances of the word "Section" followed by the "number dot number" pattern. If an instance is found, then it is extended by one character. If that character is an opening parenthesis then the selection is extended until a closing parenthesis is found. This process of finding opening/closing parentheses is continued, and when no more sets are located the entire extended selection is underlined. This process continues until the entire document has been searched.
Tip #497 applies to Microsoft Word versions: 97 2000 2002 2003 2007
Create and Merge! Using Word's mail merge tool you can quickly and easily combine data from a variety of data sources to create great individualized documents that incorporate your data in ways that you control. WordTips: Mail Merge Magic is an invaluable source for learning how to harness the full power of Word's mail merging capabilities.
Check out WordTips: Mail Merge Magic today!
Uncover how you can master the full potential of printing your documents. Everything you wanted to know about printing and printers, using Word. (more information...)
Ask a Word Question
Make a Comment
Beauty Tips
Bugs and Pests Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Money Tips
Organizing Tips
Pet Tips
Word2007 Tips
WordTips