我使用 SXSSFWorkbook() 创建我的工作簿。我需要跨行/列合并一些单元格,并给它一个边框。
我的问题是:在不应用边框的情况下合并单元格工作得很好,但是,当我尝试合并单元格并应用边框应用程序时,会遇到异常。
ERROR view - java.lang.IllegalArgumentException: Attempting to write a row[2] in the range [0,204] that is already written to disk.
java.lang.IllegalArgumentException: Attempting to write a row[2] in the range [0,204] that is already written to disk.
at org.apache.poi.xssf.streaming.SXSSFSheet.createRow(SXSSFSheet.java:113)
at org.apache.poi.ss.util.CellUtil.getRow(CellUtil.java:90)
at org.apache.poi.ss.util.RegionUtil.setRightBorderColor(RegionUtil.java:139)
Run Code Online (Sandbox Code Playgroud)
我的代码:
CellRangeAddress rangeAdd = new CellRangeAddress(2, 41, 0, 0);
sheet.addMergedRegion(rangeAdd);
RegionUtil.setRightBorderColor(IndexedColors.BLACK.getIndex(), rangeAdd, sheet, mWb);
RegionUtil.setTopBorderColor(IndexedColors.BLACK.getIndex(), rangeAdd, sheet, mWb);
RegionUtil.setLeftBorderColor(IndexedColors.BLACK.getIndex(), rangeAdd, sheet, mWb);
RegionUtil.setBottomBorderColor(IndexedColors.BLACK.getIndex(), rangeAdd, sheet, mWb);
RegionUtil.setBorderBottom(CellStyle.BORDER_THIN, rangeAdd, sheet, mWb);
RegionUtil.setBorderLeft(CellStyle.BORDER_THIN, rangeAdd, sheet, mWb);
RegionUtil.setBorderRight(CellStyle.BORDER_THIN, rangeAdd, sheet, mWb);
RegionUtil.setBorderTop(CellStyle.BORDER_THIN, rangeAdd, sheet, mWb);
Run Code Online (Sandbox Code Playgroud)
任何有关此问题的帮助/指示都会很棒。
| 归档时间: |
|
| 查看次数: |
4022 次 |
| 最近记录: |