Checking for Words and Phrases

Written by Allen Wyatt (last updated July 29, 2023)
This tip applies to Word 97, 2000, 2002, and 2003


David is a teacher who assigns his students a series of about twenty words and phrases that they must use in a composition. Each word or phrase must be used at least once. The students get one point for each time they use one of the words or phrases, although nothing extra for duplicates. David is looking for an easy way to mark their work, perhaps with a macro that searches for each word and phrase and creates some sort of record of their usage. Dave's desire is for Word to do the searching and counting so that he can focus his energy on assessing the quality of the composition.

If you want to manually figure out how many occurrences there are of a particular word or phrase, you can use Word's Find feature:

  1. Press Ctrl+F. Word displays the Find tab of the Find and Replace dialog box.
  2. In the Find What box, enter the word or phrase you want to find.
  3. Click the More button, if it is available.
  4. If you are searching for a single word, click the Find Whole Words Only check box.
  5. Click the Highlight All Items Found check box.
  6. Click Find All.

Word shows you, in the dialog box, how many occurrences it located of your word or phrase. This technique, while handy, loses some of its charm if you need to repeat it for twenty words and phrases in thirty-five different student compositions. Indeed, a macro is a more practical approach.

It would be very convenient if the number of occurrences displayed in the Find and Replace dialog box was accessible through VBA. As far as I have been able to determine, this value is not accessible. That means that you must rely on repeated searching and counting in the macro itself. One good example of how this can be done is found in the Microsoft Knowledge Base:

http://support.microsoft.com/kb/240157

The code in this page could be changed, relatively easily, to search for a series of words or phrases and display all the results at once. Another rather unique approach is to reverse the assumptions about the student compositions: assume that they use each of the words or phrases (they start with a score of 20 if there are twenty words and phrases) and only subtract points if they don't use one of them.

Sub ScoreCard()
    Dim iScore As Integer
    Dim iTopScore As Integer
    Dim WordList As Variant
    Dim i As Integer
    Dim sUnused As String

    ' Enter the words or phrases in the array below;
    ' each word or phrase in quotation marks and
    ' separated by commas
    WordList = Array("Mr.", "jelly", "wince", _
      "proper", "fix", "compound", "high and dry")

    ' Counts the number of words in the array
    iTopScore = CInt(UBound(WordList)) + 1
    iScore = iTopScore

    ' Counts the number of "misses"
    sUnused = ""
    For i = 1 To iTopScore
        With Selection.Find
            .Forward = True
            .Wrap = wdFindContinue
            .Format = False
            .MatchCase = False
            .MatchAllWordForms = False
            .MatchWholeWord = True
            .Execute FindText:=WordList(i - 1)
        End With
        If Selection.Find.Found = False Then
           iScore = iScore - 1
           sUnused = sUnused & vbCrLf & WordList(i - 1)
        End If
    Next i

    ' Displays the score
    If iScore = iTopScore Then
        sUnused = "All words and phrases were used."
    Else
        sUnused = "The following words and phrases" & _
          " were not used:" & sUnused
    End If
    sUnused = vbCrLf & vbCrLf & sUnused
    MsgBox Prompt:="The score is " & iScore & _
      " of " & iTopScore & sUnused, Title:="What's the Score?"
End Sub

The macro displays a score for the composition and also displays any of the words or phrases that were not used in the composition.

Note:

If you would like to know how to use the macros described on this page (or on any other page on the WordTips sites), I've prepared a special page that includes helpful information. Click here to open that special page in a new browser tab.

WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (333) applies to Microsoft Word 97, 2000, 2002, and 2003.

Author Bio

Allen Wyatt

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. ...

MORE FROM ALLEN

Recording a Macro

One of the most common ways of creating macros is to use Excel's macro recorder. This tip shows how easy it is to use the ...

Discover More

Shortcut Keys Don't Work as Expected

We all come to depend on shortcut keys to perform tasks in Word. If those shortcut keys don't do what we expect, it can ...

Discover More

Non-standard Sorting

Information in a cell can be entered using line feeds, which results in multiple lines of data in the same cell. If you ...

Discover More

Do More in Less Time! An easy-to-understand guide to the more advanced features available in the Microsoft 365 version of Word. Enhance the quality of your documents and boost productivity in any field with this in-depth resource. Complete your Word-related tasks more efficiently as you unlock lesser-known tools and learn to quickly access the features you need. Check out Microsoft 365 Word For Professionals For Dummies today!

More WordTips (menu)

Using Manual Line Breaks with Justified Paragraphs

If you use justified paragraphs, you know that if you press Shift+Enter, it can lead to some odd spacing between words ...

Discover More

Sharing Headings with Others

Headings form the outline of your document and hopefully give it an easy-to-follow organization. If you want to share ...

Discover More

Transposing Two Paragraphs

Need to swap two adjacent paragraphs? Your editing arsenal can include a command to do this is you use the macro in this tip.

Discover More
Subscribe

FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.

Comments

If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] (all 7 characters, in the sequence shown) in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is 5 - 3?

There are currently no comments for this tip. (Be the first to leave your comment—just use the simple form above!)


This Site

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.

Videos
Subscribe

FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.