- 将公式写入单元格
在有些时候,我们需要一些公式,或者是对另一个单元格的引用写在某个单元格里。
如果直接使用Cell的setStringValue之类的方法的话,会发现生成的工作表里,这个单元格直接将='sheet'!$D$10这行字写在单元格里,需要手工在单元格里打一个回车才显示成引用的单元格的值。
因此,要解决这个问题,需要将单元格的格式设置成CellType.FORMULA,格式,然后使用setCellFormula方法。这个单元格就显示成公式或引用的结果了。
写法如下,注意公式内容不需要写等于号:
cell.setCellType(CellType.FORMULA);
cell.setCellFormula("'SHEET'!$D$10");
- 获取引用或公式的结果
有的时候,在excel中对单元格进行计算的时候,需要的是引用,或者是公式的结果。这种情况下,如果直接获取单元格的值的话,获取的是公式本身。这时候需要用到FormulaEvaluator,获取公式或引用的结果值,进行使用。
示例如下:
CellValue cellValue = evaluator.evaluate(cells[8]);
文章来源: https://blog.csdn.net/lingco/article/details/90301158