' this should be a module-level or global variable, so that' Word is instantiated only onceDim MSWord As New Word.Application' check the spelling of a word'' returns True if the word is correct' returns False if the word is not correct, and in this case it optionally' returns a collection that contains all the suggested alternate words'' NOTE: requires a reference to the Microsoft Word Object Library' USAGE:' Dim suggestions As Collection, w As Variant' List1.Clear' If Not CheckSpelling(Text1.Text, suggestions) Then' For Each w In suggestions' List1.AddItem w' Next' End IfFunction CheckSpelling(ByVal Word As String, Optional suggestions As Collection) _ As Boolean Dim splSuggestion As Word.SpellingSuggestion Dim splSuggestions As Word.SpellingSuggestions ' Add a document, if there aren't any ' this is needed to get suggestions If MSWord.Documents.Count = 0 Then MSWord.Documents.Add ' ensure there are no extra spaces Word = Trim$(Word) ' initialize the returned collection Set suggestions = New Collection If MSWord.CheckSpelling(Word) Then ' the word is correct CheckSpelling = True Else ' the word is incorrect ' get the list of suggested words Set splSuggestions = MSWord.GetSpellingSuggestions(Word) For Each splSuggestion In splSuggestions suggestions.Add splSuggestion.Name, splSuggestion.Name Next End IfEnd Function