We help IT Professionals succeed at work.

System Default Number Format

northeyk asked
Medium Priority
Last Modified: 2011-10-03
How can I use "System Default Number Format" and specify no decimals when I format a number?

If I select "System Default Number Format" and customize it for no decimals, I lose the thousands separator specified in the Regional Options.

For example, if I use "System Default Number Format", numbers display correctly with two decimals:

999999.99 is displayed as 999,999.99 for English
999999.99 is displayed as 999 999,99 for French

I want to format a number so that:

999999 is displayed as 999,999 for English and
999999 is displayed as 999 999 for French
Watch Question


If you dont find the format you want in the available list you can customize to yourr requirement as well



Sorry - I forgot to mention I'm using an old version of Crystal (8.5).
I havent worked in version 8.5. This works in 10 and XI. May be you might have to write a formula?


You're going to need to select a custom number format - the 'system defaul' uses Windows default formats which are largely based on the language and customs of the country you're working in.

If you follow the menu options that Gary gave you, you can customize Crystal so that it will use the default format that you specify.  After going through the menus listed, click the 'Number' tab and click the 'Customize' button.  You can then set the decimals and separator to anything you want and Crystal will use this value as the default.



This is what I want.  If I change the number format (customize), it ignores the Windows default.  I am in Canada.  I have English and French customers.  I want the format to reflect their Windows number format - only with 0 decimals.

>> 'system default' uses Windows default formats which are largely based on the language and customs of the country you're working in.


If their Windows number format it English (Canada), I want 1234 to display as 1,234

If their Windows number format is French (Canada), I want 1234 to display as 1 234

Windows number formats:
English (Canada) is 123,456,789.00
French (Canada) is 123 456 789,00

If I select "System Default Number Format", I get the correct thousands separator for both, but it gives me two decimals.
The only way you could handle this in Crystal is to have a parameter for the report so the user can select their language, then you would have to conditionally format each field based on the language parameter.  This can be accomplished but it's a lot of effort to copy the conditional formatting to each field plus your users have to specify their language every time.

You can ease one portion of that if you're developing within an application.  The Windows registry contains the language settings so your application could check the registry and then pass in the appropriate language parameter automatically.  Still makes it a lot of work on the developer's side though.

Otherwise, the system default format is intended to handle the language differences, you just can't customize it that I'm aware of.


Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.


Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.