<calcPr> (Calculation Properties)

This element defines the collection of properties the application uses to record calculation status and details. Calculation is the process of computing formulas and then displaying the results as values in the cells that contain the formulas.

example:
<calcPr calcId="122211" calcMode="auto" refMode="R1C1" iterate="1"
  fullPrecision="0"/>

Parent Elements

<workbook>3.2.27)

Attributes

Description

<calcCompleted> (Calc Completed)

Specifies a boolean value that determines whether workbook data was recalculated before the workbook was saved.

A value of on, 1, or true indicates recalculation was completed before save.

A value of off, 0, or false indicates that recalculation was not completed before save.

The default value for this attribute is true.

The possible values for this attribute are defined by the XML Schema boolean datatype.

<calcId> (Calculation Id)

Specifies the version of the calculation engine used to calculate values in the workbook. When you open a workbook created in the current version, the application recalculates only the formulas that depend on cells that have changed. When you use open a workbook that was created in a earlier version of the application, all the formulas in the workbook— those that depend on cells that have changed and those that do not— are recalculated. This ensures that the workbook is fully optimized for the current application version.

The value for calcID depends on the application. SpreadsheetML defaults form [version][build], where [version] refers to the version of the application, and [build] refers to the build of the application when the calculation engine changed.

example:
<calcPr calcId="122211"/>

The possible values for this attribute are defined by the XML Schema unsignedInt datatype.

<calcMode> (Calculation Mode)

Specifies when the application should calculate formulas in the workbook.

The default value for this attribute is "auto."

The possible values for this attribute are defined by the ST_CalcMode simple type (§3.18.4).

<calcOnSave> (Calculate On Save)

Specifies a boolean value that indicates whether the application will recalculate values when the workbook is saved.

A value of on, 1, or true indicates recalculation will be performed when the workbook is saved.

A value of off, 0, or false indicates recalculation will not be performed when the workbook is saved.

The default value for this attribute is true.

The possible values for this attribute are defined by the XML Schema boolean datatype.

<concurrentCalc> (Concurrent Calculations)

Specifies a boolean value that indicates whether concurrent calculation processes are enabled for this workbook.

A value of on, 1, or true indicates concurrent calculations are enabled in this workbook.

A value of off, 0, or false indicates concurrent calculations are not enabled.

The default value for this attribute is true.

The possible values for this attribute are defined by the XML Schema boolean datatype.

<concurrentManualCount> (Concurrent Thread Manual Count)

Specifies the count of concurrent calculation processes manually set by the user. If omitted, the count is set automatically by the application.

The possible values for this attribute are defined by the XML Schema unsignedInt datatype.

<forceFullCalc> (Force Full Calculation)

Specifies a boolean value that indicates whether the application will perform a full recalculation when one was not indicated by other calculation properties. This attribute allows the application to expose mechanisms in the user interface that give users the ability to trigger when full recalculations take place.

A value of on, 1, or true indicates the application will perform a full recalculation of workbook.

A value of off, 0, or false indicates the application will not perform a full recalculation when the workbook.

The possible values for this attribute are defined by the XML Schema boolean datatype.

<fullCalcOnLoad> (Full Calculation On Load)

Specifies a boolean value that indicates whether the application shall perform a full recalculation when the workbook is opened. After load and successful calculation, the application should set this value to false. The application should set this value to true when cell formulas or values are modified by another process while the application has the workbook opened.

A value of on, 1, or true indicates the application will perform a full recalculation of workbook values when the workbook is opened.

A value of off, 0, or false indicates the application will not perform a full recalculation when the workbook is opened.

Note: If manual <calcMode> is true, then a full recalculation will not be performed on load, even when this attribute is set.

The default value for this attribute is false.

The possible values for this attribute are defined by the XML Schema boolean datatype.

<fullPrecision> (Full Precision Calculation)

Specifies a boolean that indicates the precision the application will use when performing calculations in the workbook. Full precision means that the application uses the entire value(s) stored in cells referenced by the formula to perform the calculation. For example, if two cells each contain the value 10.005 and the cells are formatted to display values in currency format, the value $10.01 is displayed in each cell. If you add the two cells together, the result is $20.01 because the application adds the stored values 10.005 and 10.005, not the displayed values. You can change the precision of calculations so that the application uses the displayed value instead of the stored value when it recalculates formulas.

For the above example, if @fullPrecision is false, then the result shall be $20.02, because each cell shows $10.01, so those are the values to be added. Furthermore, when @fullPrecision is false, the calculated value as displayed shall be saved to file.

A value of on, 1, or true indicates the application uses the stored values of the referenced cells when performing calculations.

A value of off, 0, or false indicates the application uses the display values of the referenced cells when performing calculations.

The possible values for this attribute are defined by the XML Schema boolean datatype.

<iterate> (Calculation Iteration)

Specifies a boolean value that indicates whether the application should attempt to calculate formulas that contain circular references. A circular reference is a formula that refers to the cell— either directly or indirectly— that contains the formula. If a formula refers back to one of its own cells, you must determine how many times the formula should recalculate.

A value of on, 1, or true indicates the application should attempt to calculate circular references. The calculation engine will perform iterative iterateCount calculations to before stopping.

A value of off, 0, or false indicates that the application should not attempt to calculate formulas with circular references. The calculation engine will stop on the first iteration when it encounters a circular references.

The default value for this attribute is false.

The possible values for this attribute are defined by the XML Schema boolean datatype.

<iterateCount> (Iteration Count)

Specifies the number of iterations the calculation engine will attempt when calculating a workbook with circular references, when iterate is true.

The default value for this attribute is 100.

The possible values for this attribute are defined by the XML Schema unsignedInt datatype.

<iterateDelta> (Iterative Calculation Delta)

Specifies a double that contains the maximum change for iterative calculations. The application stops calculating after <iterateCount> iterations or after all values in the circular reference change by less than <iterateDelta> between iterations, whichever comes first.

The default value for this attribute is "0.001"

The possible values for this attribute are defined by the XML Schema double datatype.

<refMode> (Reference Mode)

Specifies the reference style for this workbook. Instead of using letters for columns and numbers for rows ("A1"), this options enables using numbers for both rows and columns. Cells are then referred to in this format: R1C1.

The default value for this attribute is "A1."

The possible values for this attribute are defined by the ST_RefMode simple type (§3.18.66).

The following XML Schema fragment defines the contents of this element:

<complexType name="CT_CalcPr">
	<attribute name="calcId" type="xsd:unsignedInt"/>
	<attribute name="calcMode" type="ST_CalcMode" use="optional" default="auto"/>
	<attribute name="fullCalcOnLoad" type="xsd:boolean" use="optional" default="false"/>
	<attribute name="refMode" type="ST_RefMode" use="optional" default="A1"/>
	<attribute name="iterate" type="xsd:boolean" use="optional" default="false"/>
	<attribute name="iterateCount" type="xsd:unsignedInt" use="optional" default="100"/>
	<attribute name="iterateDelta" type="xsd:double" use="optional" default="0.001"/>
	<attribute name="fullPrecision" type="xsd:boolean" use="optional" default="true"/>
	<attribute name="calcCompleted" type="xsd:boolean" use="optional" default="true"/>
	<attribute name="calcOnSave" type="xsd:boolean" use="optional" default="true"/>
	<attribute name="concurrentCalc" type="xsd:boolean" use="optional" default="true"/>
	<attribute name="concurrentManualCount" type="xsd:unsignedInt" use="optional"/>
	<attribute name="forceFullCalc" type="xsd:boolean" use="optional"/>
</complexType>