Got a version of Word that uses the menu interface (Word 97, Word 2000, Word 2002, or Word 2003)? This site is for you! If you use a later version of Word, visit our WordTips site focusing on the ribbon interface.
With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company.
Learn more about Allen...
Please Note: This article is written for users of the following Microsoft Word versions: 97, 2000, 2002, and 2003. If you are using a later version (Word 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Word, click here: Noting Table Rows Containing a Character.
Heidi has fifteen documents, each comprised chiefly of one long table. She needs to create a macro to search row-by-row and somehow highlight (either by shading, bolding, changing font, etc.) any row that doesn't have a parenthesis character anywhere in the row. Alternatively, she can also highlight rows that do contain a parenthesis character—she just needs to be able to distinguish between rows that do and rows that don't.
There are many ways that such a macro could be approached, but one that searches for an opening or closing parenthesis is relatively easy. The following example will do the search, row by row, and if either character is found, it will highlight the row by making the background yellow.
Sub HilightRows() Dim TargetText1 As String Dim TargetText As String Dim oRow As Row Dim iCol As Integer 'initialize the target characters to find TargetText = "(" TargetText1 = ")" 'Make sure we're in a table If Selection.Information(wdWithInTable) Then 'Clear all the old shading Selection.Tables(1).Shading.BackgroundPatternColor = wdColorWhite 'do all the rows For Each oRow In Selection.Tables(1).Rows If InStr(oRow.Range.Text, TargetText) > 0 Then _ oRow.Shading.BackgroundPatternColor = wdColorYellow If InStr(oRow.Range.Text, TargetText1) > 0 Then _ oRow.Shading.BackgroundPatternColor = wdColorYellow Next oRow End If End Sub
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (568) applies to Microsoft Word 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Word (Word 2007 and later) here: Noting Table Rows Containing a Character.
Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!