java poi 合并单元格

java poi 合并单元格

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a919423654/article/details/68066294

poi 合并 单元格

  1.  
    XSSFWorkbook wb = new XSSFWorkbook();
  2.  
     
  3.  
    XSSFSheet sheet = wb.createSheet();
  4.  
    //这个就是合并单元格
  5.  
    //参数说明:1:开始行 2:结束行 3:开始列 4:结束列
  6.  
    //比如我要合并 第二行到第四行的 第六列到第八列 sheet.addMergedRegion(new CellRangeAddress(1,3,5,7));
  7.  
    sheet.addMergedRegion(new CellRangeAddress(0,0,0,1));
  8.  
     
  9.  
    XSSFRow row = sheet.createRow(number);

需要注意的地方(不对的地方请指教)

感觉唯一要注意的地方就是:需要先设置 合并单元格,然后再 生成 行。

比如我们要生成的单元格为:

1工作站 左位置 1序号 2000订单号 1成品号/型号
左位置 2序号
左位置 3序号
右位置 4序号

代码可以这样写:

  1.  
    sheet.addMergedRegion(new CellRangeAddress(0,3,0,0));
  2.  
    sheet.addMergedRegion(new CellRangeAddress(0,3,3,3));
  3.  
    sheet.addMergedRegion(new CellRangeAddress(0,3,4,4));
  4.  
     
  5.  
    //第一行数据
  6.  
    XSSFRow row = sheet.createRow(0);
  7.  
    row.createCell(0).setCellValue("工作站");
  8.  
    row.createCell(1).setCellValue("位置");
  9.  
    row.createCell(2).setCellValue("序号");
  10.  
    row.createCell(3).setCellValue("订单号");
  11.  
    row.createCell(4).setCellValue("成品号/型号");
  12.  
     
  13.  
    //第二行数据
  14.  
    XSSFRow row = sheet.createRow(number);
  15.  
    //row.createCell(0).setCellValue("工作站");//因为和上面的行合并了,所以不用再次 赋值了
  16.  
    row.createCell(1).setCellValue("位置");
  17.  
    row.createCell(2).setCellValue("序号");
  18.  
    //row.createCell(3).setCellValue("订单号");//因为和上面的行合并了,所以不用再次 赋值了
  19.  
    //row.createCell(4).setCellValue("成品号/型号");//因为和上面的行合并了,所以不用再次 赋值了


第三行数据和 第二行是一样的
原文地址:https://www.cnblogs.com/zp-uestc/p/9909660.html