【问题标题】:Adding border to merged cell using HSSFRegionUtil (Apache POI)使用 HSSFRegionUtil (Apache POI) 为合并单元格添加边框
【发布时间】:2013-02-28 06:57:10
【问题描述】:

我正在使用 Apache POI,发现当我使用 HSSFRegionUtil 为合并的单元格添加边框时,只会出现一个单元格的边框。

下面是代码

    Region region = new Region((short)0,(short)0,(short)1,(short)0);
    sheet.addMergedRegion(region);
    HSSFRegionUtil.setBorderRight(HSSFCellStyle.BORDER_MEDIUM,region, sheet, workbook);

它只显示一个单元格的单元格边框,而不是区域边框。感谢您提供任何帮助。

【问题讨论】:

    标签: java excel apache-poi


    【解决方案1】:

    就个人而言,我不使用 HSSFRegionUtil 为合并区域添加边框。 我的解决方案是:

    假设您要合并从第 1 行第 1 列到第 5 行第 5 列的区域

    1) 将cellStyle设置为单元格1,1

    2) 编写一个将单元格样式复制到所有其他单元格的方法。

    3) 合并区域

    这里是一个例子:

        CellStyle style = defaultBorderStyle;
        Row tempRow = currentSheet.getRow(startRow);
        Cell cell = tempRow.getCell(startColumn);
    
        for (int i = startRow; i <= endRow; i++) {
            tempRow = currentSheet.getRow(i);
    
            for (int j = startColumn; j <= endColumn  ; j++) {
                tempRow.getCell(j).setCellStyle(style);
            }
    
        }
        sheet.addMergedRegion(new CellRangeAddress(startRow, endRow, startColumn, endColumn));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-26
      • 2020-03-26
      • 1970-01-01
      • 1970-01-01
      • 2015-01-28
      • 2019-01-11
      相关资源
      最近更新 更多