使用POI导出Excel,设置单元格样式对于后几行无效的问题

2019-11-27  本文已影响0人  李北北

使用Excel导出单元格的时候,根据单元格的格式,代码如下

//如果值是"-", 将其背景设置为灰色
if ("-".equals(value)) {
    CellStyle cellStyle = workbook.createCellStyle();
    cellStyle.cloneStyleFrom(normalStyle);
    cellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
    cell.setCellStyle(cellStyle);
}

结果使用WPS打开没问题,但是使用Word2016打开,有一些单元格样式并没有生效,如图:

WPS打开:


image.png

Word2016打开:


image.png

解决办法,如果单元格样式是一样的,不要每次都重新创建一个对象,只需要给需要的单元格设置同一个样式对象就可以了:

if ("-".equals(value)) {
    cell.setCellStyle(grayStyle);
}
上一篇下一篇

猜你喜欢

热点阅读