Java POI导出Excel时,合并单元格没有边框的问题
今天用POI导出Excel的时候,发现导出的单元格确少边框,最后发现有2个方案可以解决。
方案一
CellRangeAddress的4个参数分别表示:起始行号,终止行号, 起始列号,终止列号
// 使用这种方式合并单元格时,要给单元格逐一设置带边框的样式
sheet.addMergedRegion(new CellRangeAddress(1, 1, 1, 3));
// 例如:
HSSFCellStyle defaultStyle = ExportToExcelUtil.setDefaultStyle(workbook);
// 为单元格设置带边框的样式
setCellStyles(row, 2, 3, defaultStyle );/**
* 设置单元格样式
*/
private void setCellStyles(HSSFRow row, int start, int end, HSSFCellStyle cellStyle) {for (int i = start; i <= end; i++) {cell = row.createCell(i);cell.setCellStyle(cellStyle);}
} /**
* 带边框的样式+
*/
public static HSSFCellStyle setDefaultStyle(HSSFWorkbook workbook) {HSSFCellStyle cellStyle = workbook.createCellStyle();// 边框cellStyle.setBorderBottom(BorderStyle.THIN);cellStyle.setBorderLeft(BorderStyle.THIN);cellStyle.setBorderRight(BorderStyle.THIN);cellStyle.setBorderTop(BorderStyle.THIN);return cellStyle;
}
方案二
// 合并单元格
CellRangeAddress region = new CellRangeAddress(1, 1, 2, 2);
sheet.addMergedRegion(region);// 合并之后为合并的单元格设置样式
setRegionStyle(sheet, region, defaultStyle);/**
* 为合并的单元格设置样式(可根据需要自行调整)
*/
@SuppressWarnings("deprecation")
public static void setRegionStyle(HSSFSheet sheet, CellRangeAddress region, HSSFCellStyle cs) {for (int i = region.getFirstRow(); i <= region.getLastRow(); i++) {HSSFRow row = sheet.getRow(i);if (null == row) row = sheet.createRow(i);for (int j = region.getFirstColumn(); j <= region.getLastColumn(); j++) {HSSFCell cell = row.getCell(j);if (null == cell) cell = row.createCell(j);cell.setCellStyle(cs);}}
}
Java POI导出Excel时,合并单元格没有边框的问题相关推荐
- java poi导出excel,合并单元格
java导出excel一般都是2种情况,一种是依赖一个实体类进行导出,或者把数据查询出来当成一个视图,对视图进行创建实体:另一种方式就是通过数据还要计算,然后一块统计,那么就不是很好处理了,我采用的是 ...
- poi 导出Excel 动态 合并单元格
public String arrearagePeriodExport(ArrearageParam param) {param.setPageNo(1);param.setPageSize(Inte ...
- ruoyi导出excel时合并单元格
ruoyi版本 3.8.2 首先第一步 增加注解 /*** 合并行* 参数1合并第一个参数为合并基准列,其他列用逗号拼接,依据基准列进行当前单元行合并 参数:如1,7, 8*/ public Stri ...
- Java POI 导出Excel,设置单元格无法编辑, 开启工作表保护后,依然可以筛选, 冻结行列不移动
1. 设置单元格无法编辑 // 单元格样式锁定 不可编辑 CellStyle lockStyle = workbook.createCellStyle(); lockStyle.setLocked(t ...
- poi 导出excel 中合并单元格
参数说明 CellRangeAddress(int firstRow, int lastRow, int firstCol, int lastCol) CellRangeAddress(起始行号,终止 ...
- Java 利用hutool工具实现导出excel并合并单元格
Java 利用hutool工具实现导出excel并合并单元格 controller层调用service,就一个核心方法,没错就下面这个代码就能实现了.前提是项目里面要引用hutool包.把我这个复制到 ...
- Springboot导出excel,合并单元格示例
原文链接:Springboot导出excel,合并单元格示例 更多文章,欢迎访问:Java知音,一个专注于技术分享的网站 以下用一个示例来说明springboot如何导出数据到excel. 首先引入M ...
- POI进行Excel的合并单元格数据处理
POI进行Excel的合并单元格数据处理 近日接到一个要处理合并Excel单元格的上料表的需求,就到网上找了一些模板,发现有的技术大牛还是挺厉害的,对他们致以敬意. 合并单元格工具类 在这个类中将传入 ...
- easyexcel导出excel自定义合并单元格【动态表头和动态数据均可以自由合并】
网上合并单元格的博客还是很多的,大家自行舍取吧.本文主要讲解固定与不固定的表头和内容如何合并 参考官网 https://easyexcel.opensource.alibaba.com/docs/cu ...
- JAVA POI 导出EXCEL时,EXCEL模板中的公式无效问题
JAVA POI 出力EXCEL时,EXCEL模板中的公式无效问题 工作中遇到一个问题. EXCEL模板有两个sheet,画面内容要导出到第二个sheet中,第一个sheet设置公式,读取第二个she ...
最新文章
- WPF-3D动效-文字球形环绕
- 【MM配置】Inventory Management 库存管理
- linux 安装tcl命令,TCL/TK Linux下安装 | 勤奋的小青蛙
- ios 旋转屏幕试图切换_TCL·XESS 旋转智屏 A200Pro 评测:方向一换,体验大不相同...
- ifconfig没有ip地址_虚拟机创建后该如何获取IP地址并访问互联网实用教程
- OpenCV形态学操作
- 深度学习自学(十四):人脸检测-出现cudaGetDeviceCount failed
- MongoDB数据库导出导入迁移
- 地理空间数据云下载的dem数据打不开怎么办? 显示光盘映像已损坏
- VGG16和VGG19网络结构图
- 数据结构之八大排序算法(C语言实现)
- vue优化技巧之mixins
- 怎样提升自己的编程能力?
- [益智]:谁是机械师
- 生物信息学算法之Python实现|Rosalind刷题笔记:002 中心法则:转录
- Elasticsearch大数据量写入调优和原理解析
- python matplotlib 绘制K线图(蜡烛图)
- 计算机word图标不显示,word图标不显示怎么办 设置图标显示的具体方法
- 常用的跟外链相关的几种工具
- solr mysql 全文搜索_全文检索Solr集成HanLP中文分词