【无标题】导出Excel表格自定义合并行

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

excel导出遇到的用easypoi注解@excel合并未解决遇到的自定义合并

提示:以下是本篇文章正文内容,下面案例可供参考

一、使用步骤

1.自定义合并行

代码如下(示例):

  //设置要合并的单元格
  //CellRangeAddress有4个参数:起始行号,终止行号, 起始列号,终止列号
  CellRangeAddress mergeExcel1 = new CellRangeAddress(1, 1, 1, 19);
  // 创建工作表
  Workbook workbook = ExcelExportUtil.exportExcel(list, ExcelType.HSSF);  
  //获取到excel中第一个sheet
  Sheet sheetAt0 = workbook.getSheetAt(0);
  //合并单元格
  sheetAt0.addMergedRegion(mergeExcel1);
  

2.设置样式及字体

代码如下(示例):

 Row sheetAt0Row = sheetAt0.createRow(0);
 Cell sheetAt0Cell1 = sheetAt0Row.createCell(0);
 HSSFRichTextString sheetAt0Text0 = new HSSFRichTextString(sheetAt0Cell1.getStringCellValue());
 CellStyle style = workbook.createCellStyle();
        style.setBorderLeft(BorderStyle.THIN);
        style.setBorderRight(BorderStyle.THIN);
        style.setBorderBottom(BorderStyle.THIN);
        style.setBorderTop(BorderStyle.THIN);
        //设置sheet0  字体为宋体9号
        Font font = workbook.createFont();
        //字体样式
        font.setFontName("宋体");
        //是否加粗
        font.setBold(false);
        //字体大小
        font.setFontHeightInPoints((short) 9);
        style.setFont(font);
 //将值重新放回cell
 sheetAt0Cell1.setCellValue(sheetAt0Text0);
 sheetAt0Cell1.setCellStyle(style);

3.设置合并单元格的边框样式

 List<CellRangeAddress> mergedRegionsSheetAt0 = sheetAt0.getMergedRegions();
  for (CellRangeAddress mergedRegion : mergedRegionsSheetAt0) {
            RegionUtil.setBorderTop(BorderStyle.THIN, mergedRegion, sheetAt0);
            RegionUtil.setBorderBottom(BorderStyle.THIN, mergedRegion, sheetAt0);
            RegionUtil.setBorderLeft(BorderStyle.THIN, mergedRegion, sheetAt0);
            RegionUtil.setBorderRight(BorderStyle.THIN, mergedRegion, sheetAt0);
        }

总结

以上就是在我写代码用到的,记录下来希望对大家有用。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值