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

Posted on 2006-05-30
Medium Priority
Last Modified: 2008-01-09
please help
Question by:itbabe
  • 2

Expert Comment

ID: 16790100
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.

Author Comment

ID: 16790170
I need to be able to automate this change and would like to know in which registry key these settings are kept.

Expert Comment

ID: 16790268
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

Accepted Solution

garlin007 earned 2000 total points
ID: 16795452

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.

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

We live in a world of interfaces like the one in the title picture. VBA also allows to use interfaces which offers a lot of possibilities. This article describes how to use interfaces in VBA and how to work around their bugs.
Lost Word File? Eagerly, need it back? Read ahead; this File Recovery guide is for you.
The viewer will learn how to create two correlated normally distributed random variables in Excel, use a normal distribution to simulate the return on different levels of investment in each of the two funds over a period of ten years, and, create a …
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

864 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question