33

How do I set the decimal separator in Libre Office Calc?

I want the decimal separator to be dot (.), not comma (,):

enter image description here

I want to set this system-wide and as default (don't want to set this for each cell).

4 Answers 4

22

From https://help.libreoffice.org/Common/Languages#Locale_setting:

Specifies the locale setting of the country setting. This influences settings for numbering, currency and units of measure.

Go to Tools -> Options -> Language Settings -> Languages. If you want to keep everything like Russian except using a dot as decimal separator, one way is to change the Locale Setting to English (UK). Then change Default Currency back to RUB, and Date Acceptance Patterns back to D.M.Y;D.M.;D/M/.

The locale setting does not affect spell checking. This is governed by the language of the document.

2
  • 1
    Why do you talk about Russian? Jun 30, 2023 at 6:47
  • 1
    @AndreaAraldo: This was too long ago for me to remember the specifics, but perhaps it was because the OP's location is listed as Russia.
    – Jim K
    Jun 30, 2023 at 12:28
5

Calc does this via the language locale settings.

If your wish does not align with your normal working language default, you could grab a "throwaway language" just for this purpose (Esperanto or something you never need otherwise) and define the dot as separator for Esperanto.

Then tell Calc in tools > options > language settings that you want Esperanto (not just for this-one document); that way you have it system-wide with system being your Calc. hth This might mess up other things like your spell-checker, but it was Calc's choice to connect decimal separator to a language; which I believe is a mistake, esp. for multi-language documents.

3

In addition to changing the locale globally as proposed by the other replies, it is also possible to do it for a selection of cells in the current sheet/document.

Simply select the cells, then right-click, select “Format cells …”, then select “Number” and then select a language from the field that has the desired decimal separator.

https://wiki.openoffice.org/wiki/Documentation/FAQ/Calc/Formatting/How_can_I_use_a_dot_(.)_as_decimal_sign_instead_of_a_comma%3F

0

You can change the source in the respective XML in localedata/data/ and then recompile the program.

If you are not to recompile the program you can patch the respective library.

I am on a Windows system using Bulgarian locale. Libre Office does not respect the changes one might have made in the Windows regional settings formats. In order to have the dot as a decimal separator I hex edited the localedata_euro.dll found the definition for Bulgarian and changed the comma to a dot.

The actual DLL patch: using a hex editor I found the Bulgaria string. Note that the strings are unicode so two bytes per character, thus searching for Bulgaria is actually hex search for 42 00 75 00 6C 00 67 00 61 00 72 00 69 00 61 00. Then some 20 bytes before the match location I replaced the 2C to a 2E.

This is the result: result

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .