Friday, November 05, 2010

Macro to Search Typos in Microsoft Word

Most of us tend to type some funny words or break a word into multiple words which are not captured by the spell checker. Inability of the spell checker to understand the context leads to this issue. Here is a Word Macro to detect such errors which I developed while wiring my PhD proposal.

Macro searches for each word in the 'terms' array and move the cursor to the first occurrence allowing you to manually edit the word(s). It doesn't correct errors as some of the words are context sensitive and depends on the position of a sentence. You can always extend the to code to deal with common mistakes like writing 'in to' instead of 'into'. After each correction you need to rerun the macro. Simplest way to rerun is to assign a shortcut key to the macro. When all the words are searched you will see a message saying "Double Check Compete...!". Feel free to add your own words to the 'terms' array.


Sub Double_Check()
'
' Double_Check Macro
' This macro only points you to the first location of word that you may have misspelled or 

' written as multiple words. It doesn't correct errors as some of the words are context sensitive
' (can be extended if needed). You need to rerun the macro until all erros are corrected.
'
    'List of words that you have tendency to misspell or write as multiple words
    terms = Array("  ", "all most", "all ready", "all together", "all ways", _
                    "before hand", "can not", "community wide", "data center", _
                    "et. al.", "far away", "fig,", "further more", "in to", _
                    "my self", "testbed", "Wide spread")
   
    For Each my_item In terms
        Selection.Find.ClearFormatting
        With Selection.Find
        .Text = my_item             'term to search
        .Forward = True
        .Wrap = wdFindContinue
        .MatchCase = False          'case insensitive
        .MatchWholeWord = True
        End With
       
        If Selection.Find.Execute = True Then
            End                    ' exit if a match
        End If
    Next my_item
    MsgBox ("Double Check Complete...!")
End Sub


You can add a shortcut key to Word by going to Customize Quick Access Toolbar button (on top left corner) More Commands... Customize Keyboard shortcuts. Press the Customize button.

0 comments: