• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2266
  • Last Modified:

Which registry key do I need to edit to change the default spellcheck language in Office 2003

please help
  • 2
1 Solution
Change the default language setting
You can change your default settings in Microsoft Office to have them match the default settings of a different language.

In Microsoft Windows XP, on the Windows Start menu, point to All Programs, point to Microsoft Office, point to Microsoft Office Tools, and then click Microsoft Office 2003 Language Settings.

In Windows 2000, on the Windows Start menu, point to Programs, point to Microsoft Office Tools, and then click Microsoft Office 2003 Language Settings

Click the Enabled Languages tab.
In Windows XP, in the Choose the language that defines default behavior in Microsoft Office applications box, select the language you want, and then click OK.

In Windows 2000, in the Default version of Microsoft Office box, select the language you want, and then click OK.

A message appears describing the effects of the change. To continue, click Continue and lose customizations.
itbabeAuthor Commented:
I need to be able to automate this change and would like to know in which registry key these settings are kept.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Control Panel\Extended Properties\{305CA226-D286-468e-B848-2B2E8E697B74} 2
The allowed values of category IDs are as follows: • 0x00000000 : Other Control Panel Options (any tool that does not specify a category ID is placed in this category)
• 0x00000001 : Appearance and Themes
• 0x00000002 : Printers and Other Hardware
• 0x00000003 : Network and Internet Connections
• 0x00000004 : Sounds, Speech, and Audio Devices
• 0x00000005 : Performance and Maintenance
• 0x00000006 : Date, Time, Language, and Regional Options
• 0x00000007 : Accessibility Options
• 0xFFFFFFFF : Do not put the tool in any category (for special tools such as Add/Remove Programs which only start directly)
For example, this is how the Accessibility tool would be registered:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Control Panel\Extended Properties\{305CA226-D286-468e-B848-2B2E8E697B74} 2
"%SystemRoot%\System32\access.cpl"=[DWORD] 0x07
For tools that are implemented as shell namespace extensions (for example, Fonts and Scheduled Tasks), the category ID is specified in the registry under the CLSID entry. For example, the registry entry for the Administrative Tools folder is:
HKEY_CLASSES_ROOT\CLSID\{D20EA4E1-3957-11D2-A40B-OC5020524153} "{305CA226-D286-468e-B848-2B2E8E697B74} 2"=[DWORD] 0x05

I am not sure, but I think you are showing how different options in the Control Panel are grouped together when a user selects the category view. What itbabe is looking for is how to select the default spellcheck language in an automated way.

As far as I know, the default spellcheck language for Word is stored in normal.dot, and the language for Excel is stored in the registry at HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel\Spell Checker\Speller (I am assuming the 11.0 since it is 10.0 for Excel 2002 which is what I have installed). The value is the language number (e.g. 4105 for Canadian English or 1033 for US English). I have not researched the location for the other Office tools, but they could be gleaned using the tool called INCTRL5 from www.pcmag.com. You use that tool to take a snapshot of your system, then you make a change such as setting a new language, and then you take a second snapshot and compare it to the first. The tool shows which files and registry entries were changed.

To change the option for Excel is a matter of inserting the correct value using a tool that can set a value in the registry (such as regedit with a .reg file as a parameter)

There are (at least) three ways to change the value in Normal.dot.

1. You could use the language settings tool that Andre has suggested.
2. Open a blank document in Word. Use Format, Styles and Formatting... Right click on Normal and select Modify... CHeck the Add to template box. Use the Format button and select Language... Select your language, press OK on each of the two open dialogs. Close all open Word documents and close Outlook, too, if it is open, since Outlook uses the settings in Word. Save Normal.dot if prompted.
3. Write a VBA program that changes the language setting. I suspect you would have to go through the styles collection for the current template (your program would be written in a document that uses Normal.dot as the template), find the Normal style, and then change the language.

As for automatically setting the language for a new user, you have two approaches. If it is a user who is using Word for the first time, the first approach is to substitute your own normal.dot for the one that Word would create when the user runs Word for the first time. To do this, modify the language on a new install of Word on one computer, and then copy the resulting Normal.dot (in the folder Documents and Settings\username\Application Data\Microsoft\Templates) to the new user's folder. You can do this before the install, as part of the install, or after the install and before the first run. You could also copy it after the first run, but then you will overwrite any other changes the user has made that is stored in normal.dot.

The second approach is to run the macro (option 3 above). This technique will preserve any settings the user has made in normal.dot. There are various ways to get this macro to run automatically, but since you only want it to run once, I suppose, I would just write a macro that runs when the document loads, and make the last line of the macro close Word. Then you can just open the document by passing it as a parameter to Word. The macro runs, sets the language, and Word closes. This could be a post-installation step of your Office install, or part of your logon script, etc.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: C++ 11 Fundamentals

This course will introduce you to C++ 11 and teach you about syntax fundamentals.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now