Hi I use the following bit of code for spellchecking in an access application.
VB Code:
  1. Private Function Spellchecknew(TextStr As String) As String
  2.  Dim WordApp As Word.Application
  3.  
  4.      Set WordApp = CreateObject("Word.Application")
  5.    
  6.      WordApp.Documents.Add
  7.      Dim wordrange As Word.Range
  8.      Set wordrange = WordApp.ActiveDocument.Range(0, 0)
  9.      wordrange.Text = TextStr
  10.      WordApp.Visible = True
  11.      WordApp.Activate
  12.      
  13.      wordrange.CheckSpelling , , True
  14.      wordrange.CheckGrammar
  15.      Spellchecknew = wordrange.Text
  16.      
  17.      wordrange.Text = ""
  18.      WordApp.Documents.Close (False)
  19.  
  20.      
  21.      WordApp.Quit
  22.      
  23.      Set WordApp = Nothing
  24.     'MsgBox "test"
  25.  
  26. End Function

It nearly allways hangs in Access for about 5 seconds after the above is run, so I tried to find out what was causing the delay, but if you include the msgbox "test" at the end, the program doesn't freeze, infact it works out quicker to keep the message box command in and then click okay, than it does to remove it.
Why would this be, and how could I dulicate this without using a message box. have tried things like me.repaint but it's still the same,