最近由于项目需要用到了POI来生成Excel表格,遇到单元格合并以后怎么加边框,老是解决不了,特意上来请教一下
在网上找了一堆,都不行。
自己写了一个笨方法,可以实现列合并加边框,但是行合并就不行了,方法如下:

/**
* 合并单元格加边框  水平
* @param sheet
* @param region
* @param cs
*/
public static void setCellBorder(int start, int end, HSSFRow row,    HSSFCellStyle style) {
for(int i=start;i<=end;i++){
HSSFCell cell = row.createCell(i);
cell.setCellValue("");
cell.setCellStyle(style);
}
}

参数说明:start和并的第二列,end为合并的最后一列,row就为当前行,style样式(里面有设置边框)

例如从0-10列合并: ExcelUtil.setCellBorder(2,10,row,style);   这样可以设置

关于合并行设置也写了一个,但是不行,方法如下:

/**
* 合并单元格加边框  垂直
* @param sheet
* @param region
* @param cs
*/
public static void setCellBorder(int start, int end, int col, HSSFSheet sheet, HSSFCellStyle style) {
for(int i=start;i<=end;i++){
HSSFRow row  = ExcelUtil.createRow(sheet, start, (short)0);
HSSFCell cell = row.createCell(col);
cell.setCellValue("");
cell.setCellStyle(style);
}
}

参数说明:start和并的第二行,end为合并的最后一行,col为哪一列,sheet就是当前表格对象,style样式(里面有设置边框)

下面是调用代码:

//第二行 制表时间
HSSFRow rowCreateTime = ExcelUtil.createRow(sheet, 1, (short)400);
String time = new SimpleDateFormat("yyyy年MM月dd日").format(new Date());
ExcelUtil.createCell(sheet, rowCreateTime, 0, styleTime,
new Region(1,(short)0,1,(short)27), "制表时间:"+time,null);
//合并后单元格设置边框
ExcelUtil.setCellBorder(1, 27, rowCreateTime, styleTime);
//第三行 目录
HSSFRow rowMenu  = ExcelUtil.createRow(sheet, 2, (short)450);
HSSFRow rowMenu1 = ExcelUtil.createRow(sheet, 3, (short)450);
//单位
ExcelUtil.createCell(sheet, rowMenu, 0, style,
new Region(2,(short)0,3,(short)0),"单位",4000);
ExcelUtil.setCellBorder(3, 3, 0, sheet, style);
//设备型号
ExcelUtil.createCell(sheet, rowMenu, 1, style,
new Region(2,(short)1,3,(short)1),"设备型号",2500);
ExcelUtil.setCellBorder(3, 3, 1, sheet, style);
//全年1-12月维修情况
ExcelUtil.createCell(sheet, rowMenu, 2, style,
new Region(2,(short)2,2,(short)13),"全年1-12月维修情况",null);
//合计
ExcelUtil.createCell(sheet, rowMenu, 14, style,
new Region(2,(short)14,3,(short)14),"合计",1200);
ExcelUtil.setCellBorder(3, 3, 14, sheet, style);
//全年1-12月维护情况
ExcelUtil.createCell(sheet, rowMenu, 15, style,
new Region(2,(short)15,2,(short)26),"全年1-12月维修情况",null);
//合计
ExcelUtil.createCell(sheet, rowMenu, 27, style,
new Region(2,(short)27,3,(short)27),"合计",1200);
ExcelUtil.setCellBorder(3, 3, 27, sheet, style);

请高手指教一下,有什么好的方法么?

  • 大小: 111.7 KB
  • 查看图片附件

关于POI合并单元格后加边框问题,请大家拍砖相关推荐

  1. java通过poi生成excel表格(自适应列宽、合并单元格后的边框添加)

    具体java通过POI读写Excel的基本使用方法可参考: POI读写Excel的基本使用 1.项目导入依赖: <!--xls--> <dependency><group ...

  2. 解决POI合并单元格后边框不显示问题

    我这里用的方法可能比较笨,就是合并后其间的每个单元格都设置同样的单元格样式,便可以解决这个问题了,如果大家有更简单更好的方法,可以告诉一下,一起学习. //定义Excel文档对象 XSSFWorkbo ...

  3. java导出excel 边框不全_POI导出excel,合并单元格后没有边框

    导出的excel合并单元格有两种方法: 第一种: sheet.addMergedRegion(new CellRangeAddress(开始行, 结束行, 开始列, 结束列)); 这样就可以合并单元格 ...

  4. java导出excel 边框不全_POI 导出Excel合并单元格后部分边框不显示

    用户需要导出自定义表格,其中合并单元格样式遇到的问题,合并后只显示第一行第一列的边框,其他边框不显示,于是遍查百度,寻到一点思路 ①了解Excel绘制原理 ②了解绘制Excel顺序 ③绘制Excel单 ...

  5. NPOI合并单元格后的边框设置

    通过NPOI将单元格B2-C3进行单元格合并,并添加边框.一开始我的写法是这样的: static void Main(string[] args){HSSFWorkbook workbook = ne ...

  6. java合并单元格边框不完整,java poi 合并单元格后边框问题

    2016 CCPC 东北地区重现赛 1. 2016 CCPC 东北地区重现赛 2.总结:弱渣,只做出01.03.05水题 08   HDU5929 Basic Data Structure    模拟 ...

  7. poi 合并单元格添加边框_如何在Excel中的文本和单元格边框之间添加空间

    poi 合并单元格添加边框 Adding a bit of extra padding to your cell boundaries can make it easier for you to re ...

  8. apache poi斜边框线_apache poi合并单元格设置边框

    HSSFWorkbook wb = newHSSFWorkbook(); HSSFSheet sheet=wb.createSheet();//创建一个样式 HSSFCellStyle styleBo ...

  9. POI 合并单元格自定义插入

    POI合并单元格 合并插入列为合并开始列,同一行对象合并要使用开始行对象. package com.yk.ln.util; import org.apache.poi.hssf.usermodel.H ...

最新文章

  1. (一三〇)UITextField的光标操作扩展
  2. Promise是Monad吗?
  3. 2.4-虚拟磁盘恢复虚拟机
  4. Python 入门篇-最新版python3.7.2的安装。
  5. java高并发(十八)线程池
  6. SS CMS 全新跨平台 V7.0 版本正式发布
  7. 作者:张思思(1985-),女,博士,中国科学院北京基因组研究所生命与健康大数据中心工程师...
  8. Bootstrap创建拼接式按钮下拉菜单
  9. 注解形式控制器 数据验证,类型转换
  10. 办公用品管理系统VB——模块
  11. DeepStream运行范例出错,提示缺少libnvinfer.so怎么办?
  12. 【数据库系统工程师】数据库系统工程师官方教程第3版和第4版的区别
  13. 希科系统(CxServer)经济效益和社会效益分析
  14. PV、UV、IP分别是什么意思?
  15. World中利用宏命令批量删除页眉和页脚(亲测好用!)
  16. java获取pfx证书私钥_从PFX文件中读取私钥
  17. C语言编写 小企鹅表情包
  18. ORACLE 11GR2 配置GATEWAY FOR SERVER 问题
  19. Web前端-JavaScript
  20. 面试续与如何做自己的职业规划

热门文章

  1. Win10笔记本开启WiFi提示“无法启动承载网络”解决方法
  2. 黄凯:将信息安全当成企业的生产要素
  3. 货拉拉 Android H5离线包原理与实践
  4. echarts中蜡烛图按需加载
  5. Html+Css+Javascript项目实战
  6. 火爆的智能健身镜,照见互联网健身“新常态”?
  7. h5 js调用移动端 相机 相册
  8. java buttongroup方框_Swing之ButtonGroup用法实例 | 学步园
  9. 标准C++复数运算类详解及使用例程
  10. 深入浅出Netflix Conductor使用