Link to home
Start Free TrialLog in
Avatar of kklkkl
kklkkl

asked on

Outlook 2007 + Word 2003 - Spell check question/compatibility issue

I am in the process of upgrading my Windows XP workstations that are currently on Office 2003 with Outlook 2007.  This means that only Outlook will be upgraded as part of this process and Word, Excel and PowerPoint will all remain on 2003.  Overall, this upgrade process has worked pretty well, except for an issue I have been seeing with the spell check with Word 2003 not working as expected right after the upgrade.

After the upgrade, Word 2003 spell check does not work out of the box.  The little red squigglies don't show up under misspelled works and when trying to run spell check, I get the error "Cannot find proofing tools for English (U.S.).  If you have the proofing tools, try installing or re-installing them.  Contact your local reseller to obtain Office Proofing Tools.  For more information, see the Microsoft Office Site." - The "resolution" at the moment is going into Word 2003 > Tools > Options > Spelling and Grammar > Recheck Document.  This resolves the issue for good.  The "problem" with this is that I need a way to automate this.  I have already run some REG scan utilities to figure out what "Recheck Document" is doing, but this has not been really helpful.

I have already tried, repairs of Office 2003/Proofing tools, etc to no avail.

Any thoughts are appreciated.

TIA
Avatar of lwebber
lwebber

One way to do this is to create a Word 2003 document with a macro inside it called AutoOpen. The macro would simply perform the curative steps you descirbed. Send an email with the document attached to everyone in the organization, instructing them to open the document and say "Yes" when asked to enable macros. Or sign the macro with a digital signature that is trusted in your organization.
Avatar of kklkkl

ASKER

Unfortunately, this is not an option because of our user population.  Most don't follow directions and would not complete this even if instructed to do so with an email.  Any solution in which can be deployed  via a script, reg key, MSI (machine or user), etc. is where I am trying to go with this.
Avatar of bromy2004
The only time i've seen this is when i've installed Office, but not installed ALL parts.

If you check spelling once, does it work for all future word documents?
Avatar of kklkkl

ASKER

Yup., if you manually fix it by going into Word and "Tools > Options > Spelling and Grammar > Recheck Document", the problem is 'resolved' for the user for good.  However, I need to find a way to not make all my users have to do that.
Open NotePad.
Paste the below code in there
Save somewhere as FileName.VBS
run.

It opens Word
Creates a new document
Checks Spelling and grammer
and Quits.
Dim win

Sub CheckSpelling()
Set win = CreateObject("Word.Application")

win.Documents.Add
win.ActiveDocument.CheckGrammar
win.ActiveDocument.CheckSpelling
win.Quit


End Sub

Open in new window

Do you have a desktop management system (e.g. Altiris)? If so, you could push bromy2004's script out to each machine and run it without user intervention. If you don't, you may still be able to do it, assuming there is an enterprise login ID that has local admin rights on every machine -- and that machines are left running overnight. For more info, see:

http://motevich.blogspot.com/2007/11/execute-program-on-remote-computer.html

When you have that working, you could wrap the vbs code in a local batch file that launches it for each machine name in a long list.
Avatar of kklkkl

ASKER

I'll try the script that bromy2004 suggested, but it is still a bit messy...  Ideally the problem could be fixed by running a 'repair' or deleting a REG key, registering a DLL, etc.  Something that goes to the root of the issue.  I am trying to find this myself, but that is the direction in which I am looking to "solve" this.
If you're really feeling energetic, you could try one of those registry compare utilities to see what is getting changed in the registry. I have a hunch, though, that nothing in the registry gets changed. Word keeps personal settings in a file called Word12.pip, located in C:\Documents and Settings\UserName\Application Data\Microsoft\Office. You could try reverse-engineering that file to see if it gets changed when you perform your manual fix. Or try copying a pip from a known good machine to a known bad, and see if it cures the problem. But be prepared: the pip stores a lot of individual preferences, and if you overwrite someone's pip, they might notice a change in how Word looks to them. OTOH, they shouldn't lose their Building Blocks, templates, AutoCorrect entries, etc. So maybe it would be OK. You'll have to experiment.
Avatar of kklkkl

ASKER

Tried the REG scan utility (Active Registry Monitor as well as a 'capture' with Wise Package Studio) with no luck.  I also tried replacing/deleting the .pip file to no avail.  A "Bad" machine's PIP file does not create the issue and a "good" machine's PIP file does not fix the issue, so it is something else.  Did the same thing with Normal.dot as well to no avail.

I would use bromly's script, but it is not resolved by a simple spell check.  It requires clicking the "Recheck Spelling" button.
screen.jpg
Could you please record a macro with you pressing the recheck spelling button.
And post the macro here please.
Avatar of kklkkl

ASKER

Below is the output of the macro with the button being pressed.

Sub RecheckSpelling()
'
' RecheckSpelling Macro
' Macro recorded 4/19/2010 by GFuser
'
    Application.ResetIgnoreAll
    ActiveDocument.SpellingChecked = False
    ActiveDocument.GrammarChecked = False
    Application.DisplayStatusBar = True
    Application.ShowWindowsInTaskbar = True
    Application.ShowStartupDialog = False
    With ActiveWindow
        .DisplayHorizontalScrollBar = True
        .DisplayVerticalScrollBar = True
        .DisplayLeftScrollBar = False
        .StyleAreaWidth = InchesToPoints(1)
        .DisplayVerticalRuler = True
        .DisplayRightRuler = False
        .DisplayScreenTips = True
        With .View
            .ShowAnimation = True
            .Draft = False
            .WrapToWindow = False
            .ShowPicturePlaceHolders = False
            .ShowFieldCodes = False
            .ShowBookmarks = False
            .FieldShading = wdFieldShadingAlways
            .ShowTabs = False
            .ShowSpaces = False
            .ShowParagraphs = False
            .ShowHyphens = False
            .ShowHiddenText = False
            .ShowAll = False
            .ShowDrawings = True
            .ShowObjectAnchors = False
            .ShowTextBoundaries = False
            .ShowHighlight = True
            .DisplayPageBoundaries = True
            .DisplaySmartTags = True
        End With
    End With
    With Options
        .CheckSpellingAsYouType = True
        .CheckGrammarAsYouType = True
        .SuggestSpellingCorrections = True
        .SuggestFromMainDictionaryOnly = False
        .CheckGrammarWithSpelling = False
        .ShowReadabilityStatistics = False
        .IgnoreUppercase = True
        .IgnoreMixedDigits = True
        .IgnoreInternetAndFileAddresses = True
        .AllowCombinedAuxiliaryForms = True
        .EnableMisusedWordsDictionary = True
        .AllowCompoundNounProcessing = True
        .UseGermanSpellingReform = True
    End With
    ActiveDocument.ShowGrammaticalErrors = True
    ActiveDocument.ShowSpellingErrors = True
    Languages(wdEnglishUS).SpellingDictionaryType = wdSpelling
    With CustomDictionaries
        .ClearAll
        .Add( _
            "C:\Documents and Settings\nyadmin\Application Data\Microsoft\Proof\CUSTOM.DIC" _
            ).LanguageSpecific = False
        .ActiveCustomDictionary = CustomDictionaries.Item( _
            "C:\Documents and Settings\nyadmin\Application Data\Microsoft\Proof\CUSTOM.DIC" _
            )
    End With
End Sub
I'll repost the script in an hour or so,
I'm not near a computer at the moment.
Avatar of kklkkl

ASKER

Thanks bromy.  What is interesting, are actually the last two lines of the macro...  I would guess that part is the part that 'resolves' the issue...


With CustomDictionaries        .ClearAll        .Add( _            "C:\Documents and Settings\nyadmin\Application Data\Microsoft\Proof\CUSTOM.DIC" _            ).LanguageSpecific = False        .ActiveCustomDictionary = CustomDictionaries.Item( _            "C:\Documents and Settings\nyadmin\Application Data\Microsoft\Proof\CUSTOM.DIC" _            )    End With
Avatar of kklkkl

ASKER

Any help with this bromy?
ASKER CERTIFIED SOLUTION
Avatar of bromy2004
bromy2004
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial