Calc/Features/Automatic decimal place adjustment

From Apache OpenOffice Wiki
< Calc‎ | Features
Revision as of 14:48, 4 February 2010 by Kohei (Talk | contribs)

Jump to: navigation, search

Automatic decimal place adjustment

Specification Status
Author Kohei Yoshida
Last Change See wiki history
Status In progress in CWS koheiautodecimal


Cells containing either numeric value or formula whose result is numeric are subject to automatic adjustment of decimal places based on the available column width. The automatic decimal place adjustment takes place only when their number format is General.


Reference Document Check Location (URL)
Issue ID (required) available Issue 26826 Issue 46511
Test case specification (required) n/a


Role Name E-Mail Address
Developer Kohei Yoshida
Quality Assurance Oliver Craemer Oliver.Craemer@Sun.COM
Documentation up for grabs!
User Experience up for grabs!

Detailed Specification

Options dialog

In the Options dialog, the Calculate page will have a new check box labeled Limit decimals for general number format. When this check box is checked, you can specify the maximum number of decimal places allowed for cells with General number format. A value of 0 to 20 is allowed as the maximum number of decimal places.

When this check box is not checked, cells with General number format will use as many decimal places as the column width allows. By default, this option is not checked.

New check box to control automatic decimal adjustment behavior.

Adjusting decimal places by column width

(1) Optimal column width, with maximum number of significant digits shown, (2) adjusting by truncating decimals, (3) switching to scientific notation, (4) truncating decimals in the scientific notation, and (5) all adjustment options exhausted, displaying '###' as a last resort.

When the number format for a cell is General and its displayed value is numeric, it undergoes automatic decimal place adjustment to fit available column width if the column is not wide enough to display the cell value in full. This adjustment is performed in the following fashion.

First, Calc tries to fit the displayed number within the width of the cell by reducing the number of decimal places. If the number doesn't fit even after all the decimal places have been exhausted, it then switches to scientific notation and continue adjusting decimal places in that notation. If the number still doesn't fit even with the scientific notation, it displays '###' in place of the original value.

There is an exception to this rule, that is, when the value of the cell is less than 0.0001 (=1.0E-04), the value is displayed in scientific notation if

  • the total number of characters to be displayed in decimal notation exceeds 11 (or 12 for negative numbers accounting for the minus sign) even if the column is wide enough to display it without automatic adjustment, or
  • the value is undergoing automatic adjustment to fit the column width.




The node Calc/Calculate/Other/DecimalPlaces stores The option for the automatic adjustment of decimal places for the General number format. When the Limit decimals for general number format option is not set, the value of -1 is stored in this node. When this option is set, the specified decimal places (which is a positive value) is stored in this node instead.

File Format


Open Issues

Not yet determined.

Personal tools