XLL+ Class Library

Ensuring stable behavior

There are two main issues to address in order to be sure that your add-in behaves as expected when used in a language other than the one you wrote it in.

Category

In the XLL+ Function Wizard, you can select a category for your add-in function. The standard categories shown in the XLL+ Function Wizard are built into Excel. If you select one of the standard categories for your function, then it will automatically appear in the local language of the Excel version being run. See Function category for a list of the built-in categories.

If you wish to take advantage of this facility, you should be sure to use a category that is identical to that in the drop-down list. If you change the wording at all, then XLL+ will not recognize it as a built-in category, and will show the category exactly as you entered it, rather than translating it to the Excel version language.

If you decide to use a new category, you can localize it in the usual way by using a resource ID instead of a string (as shown below), and adding a string with the appropriate resource ID to each language's string table in the resource file. See String substitutions for information about resource ID strings.

Formulae

A formula's argument separators vary according to the user's regional settings. For example, =MyFunc(A,B,C) (in English) will appear as =MyFunc(A;B;C) in German, with semicolons replacing commas. In addition, the names of built-in functions vary in different language versions of Excel. If you are setting formulae from your code, or if you are reading formulae and parsing them, you should be aware of these issues and code defensively.

See Setting formulae for a full discussion of the internationalization of formulae.

Next: String substitutions >>