POI合并单元格

简介: POI合并单元格

核心代码:

CellRangeAddress region = new CellRangeAddress(rowNum2-(chongfucishu-1), rowNum2, 0, 0);
                        sheet2.addMergedRegion(region);
//year1  年份重复的
        for (String key : map_year1.keySet()) {
            String years = key;//重复的矿山ID
            Integer chongfucishu = map_year1.get(key);//重复次数
            int row_num=1;
            //在表中存放查询到的数据放入对应的列
            for (SimilarityRatioEntity sre : quchonghou) {
                if(sre.getPreID().toString().equals(key)){
                    System.out.println("row_num="+row_num);
                    XSSFRow row1 = sheet2.createRow(rowNum2);
                    XSSFCell cell0 = row1.createCell(0);
                    XSSFCell cell2 = row1.createCell(2);
                    XSSFCell cell1 = row1.createCell(1);
                    XSSFCell cell3 = row1.createCell(3);
                    cell0.setCellValue(sre.getPreID());
                    cell1.setCellValue(sre.getNextID());
                    cell2.setCellValue(sre.getPreName());
                    cell3.setCellValue(sre.getNextName());
                    row1.createCell(4).setCellValue(sre.getValue());
                    if (sre.getFlag()==null){
                        row1.createCell(5).setCellValue("");
                    }else{
                        row1.createCell(5).setCellValue(sre.getFlag());
                    }
                    if(row_num==chongfucishu){
                        CellRangeAddress region = new CellRangeAddress(rowNum2-(chongfucishu-1), rowNum2, 0, 0);
                        sheet2.addMergedRegion(region);
                        CellRangeAddress region2 = new CellRangeAddress(rowNum2-(chongfucishu-1), rowNum2, 2, 2);
                        sheet2.addMergedRegion(region2);
                        rowNum2=rowNum2+1;
                    }else {
                        rowNum2++;
                    }
                    row_num++;
                    si.add(sre);
                }
            }
        }
        //把之前添加的都删除
        quchonghou.removeAll(si);
        //year2  年份重复的
        for (String key : map_year2.keySet()) {
            String years = key;//重复的矿山ID
            Integer chongfucishu = map_year2.get(key);//重复次数
            int row_num=1;
            //在表中存放查询到的数据放入对应的列
            for (SimilarityRatioEntity sre : quchonghou) {
                if(sre.getNextID().toString().equals(key)){
                    System.out.println("row_num="+row_num);
                    XSSFRow row1 = sheet2.createRow(rowNum2);
                    XSSFCell cell0 = row1.createCell(0);
                    XSSFCell cell2 = row1.createCell(2);
                    XSSFCell cell1 = row1.createCell(1);
                    XSSFCell cell3 = row1.createCell(3);
                    cell0.setCellValue(sre.getPreID());
                    cell1.setCellValue(sre.getNextID());
                    cell2.setCellValue(sre.getPreName());
                    cell3.setCellValue(sre.getNextName());
                    row1.createCell(4).setCellValue(sre.getValue());
                    if (sre.getFlag()==null){
                        row1.createCell(5).setCellValue("");
                    }else{
                        row1.createCell(5).setCellValue(sre.getFlag());
                    }
                    if(row_num==chongfucishu){
                        CellRangeAddress region = new CellRangeAddress(rowNum2-(chongfucishu-1), rowNum2, 1, 1);
                        sheet2.addMergedRegion(region);
                        CellRangeAddress region2 = new CellRangeAddress(rowNum2-(chongfucishu-1), rowNum2, 3, 3);
                        sheet2.addMergedRegion(region2);
                        rowNum2=rowNum2+1;
                    }else {
                        rowNum2++;
                    }
                    row_num++;
                }
            }
        }
目录
相关文章
使用EasyPOI实现列数动态生成,多个sheet生成
使用EasyPOI实现列数动态生成,多个sheet生成
|
6月前
|
easyexcel
EasyExcel动态合并单元格
EasyExcel动态合并单元格
211 0
|
7月前
|
Java
使用POI导出Excel
使用POI导出Excel
|
索引
POI(excel)中WorkBook和Sheet应用实践总结
POI(excel)中WorkBook和Sheet应用实践总结
334 1
|
7月前
POI(excel)中表格(单元格)样式应用实践总结
POI(excel)中表格(单元格)样式应用实践总结
137 0
|
索引
POI(excel)中Cell应用实践总结
POI(excel)中Cell应用实践总结
274 0
POI入门操作Excel单元格
POI入门操作Excel单元格
153 0
excel导入poi中的数据使用cell.getStringCellValue()获取报错
excel导入poi中的数据使用cell.getStringCellValue()获取报错
512 0
|
Java API
操作Excel,除了使用POI你还会其他的?
操作Excel,除了使用POI你还会其他的?
341 0
操作Excel,除了使用POI你还会其他的?
|
Java
poi导出Excel 单元格样式丢失问题
java 导出Excel出现的坑
1006 0
poi导出Excel 单元格样式丢失问题