一、加黑色边框 合并单元格
CellRangeAddress cratitle = new CellRangeAddress(0, 0, 0, len); //合并单元格 起始行,结束行,起始列,结束列 CellRangeAddress cradw = new CellRangeAddress(1, 3, 0, 0); CellRangeAddress crazj = new CellRangeAddress(1, 1, 1, 4); CellRangeAddress craqs = new CellRangeAddress(1, 1, 5, 26); CellRangeAddress crahs = new CellRangeAddress(2, 3, 1, 1); CellRangeAddress crayjt = new CellRangeAddress(2, 3, 2, 2); CellRangeAddress crabze = new CellRangeAddress(2, 3, 3, 3); CellRangeAddress craznj = new CellRangeAddress(2, 3, 4, 4); List<CellRangeAddress> craList = new ArrayList<CellRangeAddress>(); craList.add(cratitle); craList.add(cradw); craList.add(crazj); craList.add(craqs); craList.add(crahs); craList.add(crayjt); craList.add(crabze); craList.add(craznj); for (CellRangeAddress cellRangeAddress : craList) { // 使用RegionUtil类为合并后的单元格添加边框 RegionUtil.setBorderBottom(1, cellRangeAddress, sheet); // 下边框 RegionUtil.setBorderLeft(1, cellRangeAddress, sheet); // 左边框 RegionUtil.setBorderRight(1, cellRangeAddress, sheet); // 有边框 RegionUtil.setBorderTop(1, cellRangeAddress, sheet); // 上边框 } sheet.addMergedRegion(cratitle);// 标题 sheet.addMergedRegion(cradw);// 单位 sheet.addMergedRegion(crazj);// 总计 sheet.addMergedRegion(craqs);// 期数 sheet.addMergedRegion(crahs);// 户数 sheet.addMergedRegion(crayjt);// 应计提工会经费 sheet.addMergedRegion(crabze);// 不足额金额 sheet.addMergedRegion(craznj);// 滞纳金
二、宽度自适应
SXSSFSheet sheet = sfWb.getSheetAt(0);
sheet.trackAllColumnsForAutoSizing(); //先设置表格所有列宽度可自动调整
sheet.autoSizeColumn(j); //将某一列设置自动调整