我需要将下图报销单模板红框部分根据明细数量移动若干行,
移动后发现移动的合并的单元格被拆分了.
一番查询结果应该是excel自身bug.
然后找到此文章,可以用重新合并的方式解决.
https://blog.csdn.net/wudajushi/article/details/72802058
修改代码重新运行报错,原因是重新合并时,存在有合并的单元格,所以应该先拆分单元格
for (int i = sheet.getNumMergedRegions() - 1; i >= 0; i--) {
CellRangeAddress region = sheet.getMergedRegion(i);
//判断移动的行数后重新拆分
if(region.getFirstRow()>=(11+roundCount1-1)){
sheet.removeMergedRegion(i);
}
}
完美解决