Java使用poi操作excel的几个小技巧

博客介绍了在Java中使用POI处理Excel时,将公式写入单元格和获取引用或公式结果的方法。写入公式时,需将单元格格式设为CellType.FORMULA并使用setCellFormula方法;获取结果时,要用到FormulaEvaluator来获取值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 将公式写入单元格

在有些时候,我们需要一些公式,或者是对另一个单元格的引用写在某个单元格里。

如果直接使用Cell的setStringValue之类的方法的话,会发现生成的工作表里,这个单元格直接将='sheet'!$D$10这行字写在单元格里,需要手工在单元格里打一个回车才显示成引用的单元格的值。

因此,要解决这个问题,需要将单元格的格式设置成CellType.FORMULA,格式,然后使用setCellFormula方法。这个单元格就显示成公式或引用的结果了。

写法如下,注意公式内容不需要写等于号:

        cell.setCellType(CellType.FORMULA);

    cell.setCellFormula("'SHEET'!$D$10");

 

  • 获取引用或公式的结果

有的时候,在excel中对单元格进行计算的时候,需要的是引用,或者是公式的结果。这种情况下,如果直接获取单元格的值的话,获取的是公式本身。这时候需要用到FormulaEvaluator,获取公式或引用的结果值,进行使用。

示例如下:

FormulaEvaluator   evaluator = excelFile.getCreationHelper().createFormulaEvaluator();

CellValue cellValue = evaluator.evaluate(cells[8]);

        cells[6].setCellValue(cellValue.getStringValue());

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值