bottom
Great WordTips!
         
Your e-mail address is safe!
Close Note

Tips.Net > WordTips Home > Formatting > Searching for Formatting > Searching for Borders

Searching for Borders

Summary: The Find and Replace feature in Word allows you to easily search for lots of different items or characteristics in your document. One of the things you cannot natively do, however, is to search for borders on paragraphs. This tip introduces two macros that make short work of finding any bordered paragraphs in your documents. (This tip works with Microsoft Word 97, Word 2000, Word 2002, and Word 2003.)

Word has a very powerful feature that allows you to search for just about anything under the sun. One thing you cannot search for is borders on paragraphs, however. For instance, if you want to find all paragraphs that had the left border turned on, you can't do it. There are a couple of ways to work around this, however.

The first workaround is to simply use styles to format your paragraphs. If you use a style, and the style calls for a left-side border on a paragraph, then you can easily search for paragraphs using that style. (Exactly how you search for styles has been covered in other issues of WordTips.)

The second possible workaround is to do your searching using a macro. Using a macro, you can easily check to see if any border attributes are set for a paragraph. The following macro steps through each of the paragraphs in a document. When it finds a paragraph that has any of the border attributes set, that paragraph is selected, and the macro stops.

Sub SearchForBorders1()
    Dim k As Word.Paragraph
    Dim bFound As Boolean

    For Each k In ActiveDocument.Paragraphs
        bFound = False
        If k.Borders(wdBorderTop).LineStyle <> wdLineStyleNone _
          Then bFound = True
        If k.Borders(wdBorderLeft).LineStyle <> wdLineStyleNone _
          Then bFound = True
        If k.Borders(wdBorderBottom).LineStyle <> wdLineStyleNone _
          Then bFound = True
        If k.Borders(wdBorderRight).LineStyle <> wdLineStyleNone _
          Then bFound = True

        If bFound Then
            k.Range.Select
            Exit Sub
        End If
    Next k
End Sub

This macro can be very handy if you don't have many paragraphs with borders. Why? Because the macro always begins searching from the start of the document, and therefore will only find the first paragraph with a border set.

A different macro approach can be used to search for borders in paragraphs beyond the one in which the insertion point is located. The following macro does just that--it starts searching after the current paragraph, and stops when it reaches a paragraph that has any of its border attributes set. Note that this macro doesn't select the entire paragraph; it simply moves the insertion point to the paragraph that has a border set.

Sub SearchForBorders2()
    Static a As Long, l As Long
    Dim b As Boolean
    Dim bd As Border
    Dim bds As Borders
    Dim prg As Paragraph
    Dim prgs As Paragraphs
    Dim re As Range
    Dim se As Selection
    Dim doc As Word.Document

    Set se = Selection
    Set re = se.Range
    Set doc = ActiveDocument
    If se.Start < l Then a = se.Start
    With doc.Content
        Set bds = .Borders
        re.Start = a
        re.End = .End
    End With
    For Each bd In bds
        b = bd = True
        If b Then Exit For
    Next
    If Not b Then Exit Sub

    Set prgs = re.Paragraphs
    For Each prg In prgs
        Set re = prg.Range
        If InStr(re.Text, Chr(13)) = 0 Then
            re.End = re.End + 1
        End If
        Set bds = re.Borders
        For Each bd In bds
            b = bd = True
            If b Then Exit For
        Next
        If b Then
            a = re.Start
            se.Start = re.Start
            se.End = re.Start
            a = re.End
            l = se.Start
            Exit Sub
        End If
    Next
    a = 0
    MsgBox "No more borders found"
End Sub

Tip #1705 applies to Microsoft Word versions: 97 | 2000 | 2002 | 2003


Ultimate Library! An amazing resource that brings together, in one place, the collected knowledge of everything ever published in WordTips. The library combines two powerful elements to make you more productive: solutions and convenience. Here's where you get your own copy of everything ever published in WordTips.
 
Check out WordTips Ten-Year Library today!

Helpful Links

Ask a Word Question
Make a Comment

Tips.Net Home
Vital News Home

WordTips FAQ
WordTips Premium

Learn Access Now

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

Advertise on the
WordTips Site

 

Great Info!

Get tips like this every week in WordTips, a free productivity newsletter. Enter your e-mail address and click "Subscribe."
     
(Your e-mail address will never be shared with anyone, ever.)