使用HSSFRegionUtil(Apache POI)向合并单元格添加边框

时间:2013-02-28 06:57:10

标签: java excel apache-poi

我正在使用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);

它仅显示一个单元格的单元格边框,而不显示区域边框。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:2)

就个人而言,我不使用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));