Apache POI 合并单元格
sheet.addMergedRegion( CellRangeAddress cellRangeAddress );
CellRangeAddress 对象的构造方法需要传入合并单元格的首行、最后一行、首列、最后一列。
CellRangeAddress cra=new CellRangeAddress(0, 3, 3, 9);
怎样把数据写入合并后的单元格中
首先要查看你 CellRangeAddress 构造方法的firstcol index
创建firstcol cell对象
cell 的set 方法写数据
在合并单元格的后一个位置写数据
查看 CellRangeAddress 构造方法的lastcol index
创建lastcol+1 cell
cell 的set方法写数据
以下是demo:
FileOutputStream fos=new FileOutputStream("D:\\13.xls"); Workbook wb=new HSSFWorkbook(); Sheet sheet=wb.createSheet(); /* * 设定合并单元格区域范围 * firstRow 0-based * lastRow 0-based * firstCol 0-based * lastCol 0-based */ CellRangeAddress cra=new CellRangeAddress(0, 3, 3, 9); //在sheet里增加合并单元格 sheet.addMergedRegion(cra); Row row = sheet.createRow(0); Cell cell_1 = row.createCell(3); cell_1.setCellValue("When you're right , no one remembers, when you're wrong ,no one forgets ."); //cell 位置3-9被合并成一个单元格, 不管你怎样创建第4个cell还是第5个cell…然后在写数据。都是无法写入的。 Cell cell_2 = row.createCell(10); cell_2.setCellValue("what's up ! "); wb.write(fos); fos.close();
转载自:http://blog.csdn.net/hehexiaoyou/article/details/37873131