概述
问题如下:
本文使用java-poi实现,
上下合并之后,居然出现了两个93.3分,点进去看又确实只有一个93.3,复制出来也是正常的
源码如下:
CellRangeAddress range = new CellRangeAddress(rowIndex, toRowIndex, columnIndex, toColumnIndex);//合并从第rowFrom行columnFrom列
hSheet.addMergedRegion(range);
网上找了很多文章,没有一个是解决此类问题的,大多只是提供合并的api
解决思路:
1.在合并之前,动态设置第一个单元格以外的需要被合并的单位内容为空
2.再进行合并单元格的操作
源码:
因为作者这里是上下进行合并所以函数名称为down(向下)Merged(合并)Region(区域)
public void downMergedRegion(int rowIndex, int columnIndex, int toRowIndex, int toColumnIndex) {
if (rowIndex < toRowIndex) {
for (int i = rowIndex+1; i <= toRowIndex; i++) {
for (int j = columnIndex; j <= toColumnIndex; j++) {
HSSFRow row = hSheet.getRow(i);
if (null != row) {
HSSFCell cell = row.getCell(j);
if (null != cell) {
cell.setCellValue("");
}
}
}
}
}
CellRangeAddress range = new CellRangeAddress(rowIndex, toRowIndex, columnIndex, toColumnIndex);//合并从第rowFrom行columnFrom列
hSheet.addMergedRegion(range);
}
结果:
最后
以上就是包容灯泡为你收集整理的poi合并单元格内容重复,只保留一个的全部内容,希望文章能够帮你解决poi合并单元格内容重复,只保留一个所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复