我想在java中使用POI合并单元格。我有一个合并单元格的输入表。
首先,我必须从该表中获取所有合并的单元格。然后我必须使用类似的合并单元格创建一个新的。
我按方法getNumMergedRegions()
合并了单元格。
这给了我这些价值观:
A56:A64=9, A65:A73=9, A2:A8=7, A49:A55=7, A20:A26=7, A9:A19=11, A43:A48=6, A27:A42=16
。现在,我想创建一个新工作表,并希望基于这些值合并单元格。或者任何人都可以使用JXL api
以任何其他方式帮助我。
答案 0 :(得分:4)
您可以使用方法sheet.addMergedRegion(rowFrom,rowTo,colFrom,colTo);
在官方网站上找到它的停靠栏。
示例:
sheet.addMergedRegion(new CellRangeAddress(1,1,4,1));
这将从B2合并到E2
粗略估计你试试这个A2:A8:
sheet.addMergedRegion(new CellRangeAddress(1,9,0,0);
答案 1 :(得分:2)
您可以使用CellReference来解析所需的String,这是一个示例:
String[] cellStrings = "A2:A8".split(":");
CellReference start = new CellReference(cellStrings[0]);
CellReference end = new CellReference(cellStrings[1]);
CellRangeAddress address = new CellRangeAddress(start.getRow(),
end.getRow(), start.getCol(), end.getCol());
System.out.println(address);
这应输出:
org.apache.poi.ss.util.CellRangeAddress [A2:A8]
然后,您可以使用HSSFSheet实例中的addMergedRegion。