Methods

afterCalculate(sheetIndex, rowIndex, colIndex)

Implement this method to do business after one cell has been calculated.

Parameters

Name Type Optional Description

sheetIndex

Number

 

Index of the sheet that the cell belongs to.

rowIndex

Number

 

Row index of the cell

colIndex

Number

 

Column index of the cell

beforeCalculate(sheetIndex, rowIndex, colIndex)

Implement this method to do business before calculating one cell.

Parameters

Name Type Optional Description

sheetIndex

Number

 

Index of the sheet that the cell belongs to.

rowIndex

Number

 

Row index of the cell

colIndex

Number

 

Column index of the cell

getCalculatedValue()

Gets the newly calculated value of the cell. Should be used only in afterCalculate(int, int, int).

getOriginalValue()

Gets the old value of the calculated cell. Should be used only in beforeCalculate(int, int, int) and afterCalculate(int, int, int).

getValueChanged()

Whether the cell's value has been changed after the calculation. Should be used only in afterCalculate(int, int, int).

onCircular(circularCellsData) → boolean

Implement this method to do business when calculating formulas with circular references. In the implementation user may also set the expected value as calculated result for part/all of those cells so the formula engine will not calculate them recursively.

Parameter

Name Type Optional Description

circularCellsData

Iterator

 

IEnumerator with CalculationCell items representing cells that depend on circular references.

Returns

boolean Whether the formula engine needs to calculate those cells in circular after this call. True to let the formula engine continue to do calculation for them. False to let the formula engine just mark those cells as Calculated.