可以合并的,不过要逐个给每一个被合并的单元格加上边框,这样就ok
有木有其他办法 有木有 ?
poi 文档 FAQ有说明:
12. How do I add a border around a merged cell?
Add blank cells around where the cells normally would have been and set the borders individually for each cell. We will probably enhance HSSF in the future to make this process easier.
private static void setRegionBorder(int border, CellRangeAddress region, Sheet sheet,Workbook wb){
CellStyle cs=wb.createCellStyle();
cs.setBorderBottom((short) border);
cs.setBorderTop((short) border);
cs.setBorderLeft((short) border);
cs.setBorderRight((short) border);
setRegionStyle( cs, region, sheet);
}
private static void setRegionStyle(CellStyle cs, CellRangeAddress region, Sheet sheet){
for(int i=region.getFirstRow();i<=region.getLastRow();i++){
Row row=sheet.getRow(i);
if(row==null) row=sheet.createRow(i);
for(int j=region.getFirstColumn();j<=region.getLastColumn();j++){
Cell cell=row.getCell(j);
if( cell==null){
cell=row.createCell(j);
cell.setCellValue("");
}
cell.setCellStyle(cs);
}
}
}
注意1:如果合并在前,则在后面不能直接用
Row row=sheet.createRow(0);
而应该改为
Row row=sheet.getRow(0);
if(row==null){
row2=sheet.createRow(2);
}
否则直接createRow会覆盖先前合并时定义的边框样式。
注意2:可以用poi自带的工具类来处理合并后的边框
private static void setRegionBorder(int border, CellRangeAddress region, Sheet sheet,Workbook wb){
RegionUtil.setBorderBottom(border,region, sheet, wb);
RegionUtil.setBorderLeft(border,region, sheet, wb);
RegionUtil.setBorderRight(border,region, sheet, wb);
RegionUtil.setBorderTop(border,region, sheet, wb);
}
分享到:
相关推荐
POI操作Excel 合并单元格 边框问题解决方法,这个方法是我亲自测试,并运用于项目中的,可以放心使用,还一并写出了很多注释,其中有写poi的bug的解决方法
总结,Java通过Apache POI库可以方便地处理Excel文件,包括合并单元格。这个过程涉及到创建工作簿和工作表,定义合并范围,写入数据并保存文件。在开发过程中,灵活运用这些方法可以满足各种复杂的Excel操作需求。
关于java EXCEL poi 合并后无法显示或无法设置边框问题 【本人亲测】 excel poi 新手! 坑了1.5天!
本主题将深入探讨如何利用Java的Apache POI库中的XSSFWorkbook类来实现自由合并单元格,并设置单元格样式。Apache POI是一个流行的API,它允许开发者读取、创建和修改Microsoft Office格式的文件,包括Excel。 首先...
在本文中,我们将深入探讨如何使用NPOI创建Excel文件,并进行单元格的样式设置,包括合并单元格、设置字体样式、边框以及对齐方式。 首先,创建一个新的Excel工作簿(HSSFWorkbook)是开始操作的基础。以下代码展示...
本示例将详细讲解如何使用C++实现设置边框、设置背景色以及合并单元格的功能,以创建一个完整的Excel文件。 首先,我们需要一个库来支持Excel文件的操作。在C++中,通常我们会选择如libxl、pandas或者开源的Apache ...
当你需要在`JTable`中实现特定的布局或者展示特殊格式的数据时,可能会遇到需要合并单元格的需求。例如,为了创建一个标题行或列,或者在某些情况下合并具有相同数据的单元格以减少重复,合并单元格就显得尤为重要。...
10、添加区域,合并单元格 11、保存Excel文件 12、根据单元格不同属性返回字符串数值 13、常用单元格边框格式 14、设置字体和内容位置 15、插入图片 16、调整工作表位置 17、设置打印区域 18、标注脚注 19...
描述提到“Android可以操作简单的表格,进行合并单元格等操作”,这表明Apache POI的功能已经扩展到Android平台,使得Android应用也能处理Excel数据,如合并单元格,这是在创建或编辑表格时常见的需求。在Android...
本案例中,"合并单元格导出数据到excel.rar"是一个压缩包,包含了一个Java代码示例,它实现了从数据库查询数据后,利用Apache POI库来生成包含合并单元格的Excel文件。以下是关于这个主题的详细知识点: 1. **Java...
本文将详细介绍如何使用 POI 库设置 Excel 单元格的格式,包括设置背景色、边框、居中、字体、列宽、自动换行和合并单元格等。 一、设置背景色 在 POI 中,可以使用 `HSSFCellStyle` 对象设置单元格的背景色。首先...
5.2 单元格边框样式 40 5.3 单元格背景色 41 5.4 单元格字体格式 41 5.5 单元格对齐方式 42 5.6 单元格数字格式化 45 5.7单元格宽度与高度 46 5.8 合并单元格样式 47 5.9 Excel样式实例 48 6.总结 52 7.附录 53
在实际应用中,可能还需要处理更复杂的情况,例如合并单元格、读取数据、设置条件格式、处理图表和公式等。Apache POI 提供了丰富的功能来支持这些需求。如果你需要进一步的代码示例或者导出优化的建议,可以寻求...
poi提供了excel转html的代码,但是吧,有好多问题。当有合并单元格时边框获取不到,单元格内的字体样式也转换不了,现在对poi提供的Tohtml.java做了一些修改,修复了这些问题,记录下,以备之后用到
在这个场景中,我们关注的是如何使用POI来生成具有合并列的Excel报表。生成这样的报表时,通常是为了呈现层次化的数据,例如组织结构、产品分类或者地区分层等。下面将详细介绍如何利用Apache POI实现这一功能。 ...
你需要指定起始和结束的单元格坐标,POI会将这些单元格合并为一个大的单元格。 在实际应用中,你需要先创建模板,定义好表头的结构,然后根据业务数据动态填充内容。这通常涉及到对单元格样式(字体、颜色、边框等...
2. **合并单元格**:在Apache POI中,使用`Sheet`对象的`mergeCells(startColumn, endColumn, startRow, endRow)`方法可以合并单元格。例如,如果你想将第一行的A列和B列合并,你可以写`sheet.mergeCells(0, 1, 0, 0...