Please Note: This article is written for users of the following Microsoft Word versions: 2007, 2010, 2013, 2016, 2019, and Word in Microsoft 365. If you are using an earlier version (Word 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Word, click here: Searching for Borders.
Written by Allen Wyatt (last updated November 28, 2020)
This tip applies to Word 2007, 2010, 2013, 2016, 2019, and Word in Microsoft 365
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 wanted 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
Note:
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (9833) applies to Microsoft Word 2007, 2010, 2013, 2016, 2019, and Word in Microsoft 365. You can find a version of this tip for the older menu interface of Word here: Searching for Borders.
Learning Made Easy! Quickly teach yourself how to format, publish, and share your content using Word 2013. With Step by Step, you set the pace, building and practicing the skills you need, just when you need them! Check out Microsoft Word 2013 Step by Step today!
Need to look for a piece of text possessing a particular formatting attribute? Here's the skinny on how this is accomplished.
Discover MoreWhen searching for text, Word can pay attention to more than just the characters in the text. It can also pay attention ...
Discover MoreSearching for text having (or not having) specific formatting is generally pretty easy. It is more difficult to search ...
Discover MoreFREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
2024-07-30 05:21:11
ES
Hello,
in the second code, what is "l" ? yes a "l" not a "1"
in the line "If se.Start < l Then a = se.Start"
Thanks
ES
2021-02-18 11:21:38
Joy Freeman
I was very excited to find this. In a document with multiple bordered paragraphs scattered throughout, if I just run the first macro over and over, each time removing the border formatting, I can work my way through a document. But what I'd really like to do is start the macro and it find each bordered paragraph and highlight each one. Then I can find all highlighted paragraphs and decide how to deal with each.
I thought you were saying the second one would at least cycle through the document finding each instance, but I don't know how to get it to work. I tried pasting a unique bracketed string (such as <here>, for later searching) when the insertion point was moved to the next bordered paragraph, but I can't figure out how the macro is supposed to be resumed to find the next, so I had to just run it over and over.
I'm obviously missing something. I actually use macros quite a bit, and have tweaked some to fit my needs, but I'm no coder. Can you advise me?
Thank you!
2020-11-29 02:39:51
Oswald Cornillie
Selecting a word: to select additional words, hold down the control button (not the mouse button)...
Got a version of Word that uses the ribbon interface (Word 2007 or later)? This site is for you! If you use an earlier version of Word, visit our WordTips site focusing on the menu interface.
Visit the WordTips channel on YouTube
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2024 Sharon Parq Associates, Inc.
Comments