[]
在 GcExcel 中,所有的公式计算都有计算引擎负责,它负责电子表格中所有的计算操作,可以解决各种复杂的计算需求。
以高性能为主要的设计理念,GcExcel 的引擎只会在必要时,才会对公式进行计算(例如取值时)。
计算引擎与电子表格结合,仅需对单元格设置相应的公式,即可完成公式计算。您无需考虑计算引擎的内部是如何工作的,对您来说它是透明的。
虽然我们已经在计算引擎的功能和性能上将他打磨到极致,但是仍然会有一些场景,需要您手动控制计算引擎。
例如,您仅需读取及修改少量的单元格数据,但电子表格中有大量的公式,因为修改和读取数据触发公式的计算。这种情况下,您可以考虑通过控制计算引擎来优化您的项目。
GcExcel 提供了 setEnableCalculation 方法,允许您开启/关闭计算引擎。
请参阅以下示例代码,关闭计算引擎。
// Disable the calculation engine
workbook.setEnableCalculation(false);
worksheet.getRange("A1").setValue(1);
worksheet.getRange("A2").setFormula("=A1");
// A2's value is zero
Object value = worksheet.getRange("A2").getValue();
请参阅以下示例代码,开启计算引擎。
// Enable the calculation engine
worksheet.getRange("A1").setValue(1);
worksheet.getRange("A2").setFormula("=A1");
workbook.setEnableCalculation(true);
// Calculates formula while getting values. A2's value is 1
Object value1 = worksheet.getRange("A2").getValue();