POI生成EXCEL,公式不自动执行的问题
2016-07-28 17:56
435 查看
场景:POI读取Excel模板。 当使用POI操作Excel时,发现由POI生成的公式能够在打开Excel是被执行, 而事先手工写入Excel模板文件的公式则不自动被调用,必须手动双击该Cell才能生效。
采取的办法: 1.使用cell.setCellFormula方法重新在制定Cell里写入公式。 2.使用sheet.setForceFormulaRecalculation(true);方法强制让改Sheet执行公式。 当然,在方法2能够生效的情况下我们还是推荐使用方法2来解决这个问题。
使用poi生成excle报表时遇到这样的问题,当前单元格没值,在设置当前单元格为空时遇到问题,因为没值的这个单元格在后面的公式中被引用,因为是空导致公式不能解析,但发现excel本身的这种情况却没有问题,遂发现是我在poi设置空值时使用的是:sheet.getRow(i).getCell(j).setCellValue("");
该空值不被excel所识别,后发现解决方案如下:
将该单元格类型设置为:HSSFCell.CELL_TYPE_BLANK类型即可。
//将当前单元格由数值类型设置为空 (设置为空的单元格才能参与excel公式计算,而""," " null等均不能参与计算)
sheet.getRow(k).getCell(j).setCellType(HSSFCell.CELL_TYPE_BLANK);
采取的办法: 1.使用cell.setCellFormula方法重新在制定Cell里写入公式。 2.使用sheet.setForceFormulaRecalculation(true);方法强制让改Sheet执行公式。 当然,在方法2能够生效的情况下我们还是推荐使用方法2来解决这个问题。
Poi 将excel单元格设置为空,使公式引用可用
使用poi生成excle报表时遇到这样的问题,当前单元格没值,在设置当前单元格为空时遇到问题,因为没值的这个单元格在后面的公式中被引用,因为是空导致公式不能解析,但发现excel本身的这种情况却没有问题,遂发现是我在poi设置空值时使用的是:sheet.getRow(i).getCell(j).setCellValue("");该空值不被excel所识别,后发现解决方案如下:
将该单元格类型设置为:HSSFCell.CELL_TYPE_BLANK类型即可。
//将当前单元格由数值类型设置为空 (设置为空的单元格才能参与excel公式计算,而""," " null等均不能参与计算)
sheet.getRow(k).getCell(j).setCellType(HSSFCell.CELL_TYPE_BLANK);
相关文章推荐
- log4j.properties配置详解与实例
- Navicat for Mysql 快捷键
- okhttp3.x的post请求
- 2016 Multi-University Training Contest 4 hdu 5775 Bubble Sort【树状数组+思维】
- Spark java.lang.outofmemoryerror gc overhead limit exceeded 与 spark OOM:java heap space 解决方法
- 实例:用jQuery实现垂直和水平下拉 菜单
- 自定义View和自定义属性 注意点
- (OK) Ubuntu下配置MPTCP
- ANDROID 监听返回键,重写事件
- RSA算法的简单实现
- elasticsearch集群部署
- 学习笔记之——简单使用facebook/fresco库加载res本地静态图片
- Android系统的版本号与API的对应表
- 0052 二叉搜索树线索化为双向链表
- Java清理_终结处理和垃圾回收(笔记)
- 【转】IPtables学习笔记
- elasticsearch集群部署
- elasticsearch集群部署
- 《深入理解计算机系统-CSAPP》练习题笔记(一)
- 小白的CTF之旅——第二站