今天发现一个BUG,说生成的EXCEL的报表中某些地方没有边框
一看,原来是合并中的单元格只有第一个格有边框
代码如下:
在以上代码中是先合并了单元格,再在第一格单元格中设样式
以下是解决方式
解决办法,很简单,让合并过的单元格中第一个单元格上都添加上加边框的样式
一看,原来是合并中的单元格只有第一个格有边框
代码如下:
//styleColumnHead2为配置好的样式,里面有给边框加边线的操作
row = sheet.createRow((short)1);
cellTitle = row.createCell((short)0);
sheet.addMergedRegion(new Region(1,(short)0,1,(short)(columnMax-1)));
cellTitle.setCellValue(this.setHSSFRichTextString("单位部门:" + dept.getDeptname()));
cellTitle.setCellStyle(styleColumnHead2);
在以上代码中是先合并了单元格,再在第一格单元格中设样式
以下是解决方式
row = sheet.createRow((short)1);
cellTitle = row.createCell((short)0);
sheet.addMergedRegion(new Region(1,(short)0,1,(short)(columnMax-1)));
cellTitle.setCellValue(this.setHSSFRichTextString("单位部门:" + dept.getDeptname()));
cellTitle.setCellStyle(styleColumnHead2);
for(int i=1;i<columnMax;i++){
cellTitle = row.createCell((short)i);
cellTitle.setCellValue(setHSSFRichTextString(""));
cellTitle.setCellStyle(styleColumnHead2);
}
解决办法,很简单,让合并过的单元格中第一个单元格上都添加上加边框的样式