programing

Apache POI를 사용하여 Excel 셀 병합

batch 2023. 4. 16. 14:46
반응형

Apache POI를 사용하여 Excel 셀 병합

Apache POI 라이브러리를 사용하여 Excel의 셀을 Marge할 수 있는 다른 방법이 있습니까?

다음을 사용하려고 했지만 작동하지 않습니다.

// selecting the region in Worksheet for merging data
CellRangeAddress region = CellRangeAddress.valueOf("A" + rowNo + ":D"
            + rowNo);

// merging the region
sheet1.addMergedRegion(region);

사용할 수 있습니다.sheet.addMergedRegion(rowFrom,rowTo,colFrom,colTo);

sheet.addMergedRegion(new CellRangeAddress(1,1,1,4));는 B2에서E2로 Marge 됩니다.이것은 제로 베이스의 인덱스입니다(예: POI 버전 3.12).

자세한 내용은 Busy Developer's Guide를 참조하십시오.

다음을 사용할 수 있습니다.

sheet.addMergedRegion(new CellRangeAddress(startRowIndx, endRowIndx, startColIndx,endColIndx));

CellRangeAddress가 다른 Marge된 지역과 일치하지 않는지 확인합니다.이것에 의해 예외가 발생합니다.

  • 셀을 서로 병합하려면 열 인덱스를 동일하게 유지하십시오.
  • 단일 행에 있는 셀을 병합하려면 행 인덱스를 동일하게 유지하십시오.
  • 인덱스는 제로 베이스입니다.

이 작업을 수행하려고 하면 다음과 같이 됩니다.

sheet.addMergedRegion(new CellRangeAddress(rowNo, rowNo, 0, 3));

가장 좋은 대답

sheet.addMergedRegion(new CellRangeAddress(start-col,end-col,start-cell,end-cell));

당신이 원한다면 셀을 병합하고 테두리를 두르는 방법을 만들겠습니다.

protected void setMerge(Sheet sheet, int numRow, int untilRow, int numCol, int untilCol, boolean border) {
    CellRangeAddress cellMerge = new CellRangeAddress(numRow, untilRow, numCol, untilCol);
    sheet.addMergedRegion(cellMerge);
    if (border) {
        setBordersToMergedCells(sheet, cellMerge);
    }

}  

protected void setBordersToMergedCells(Sheet sheet, CellRangeAddress rangeAddress) {
    RegionUtil.setBorderTop(BorderStyle.MEDIUM, rangeAddress, sheet);
    RegionUtil.setBorderLeft(BorderStyle.MEDIUM, rangeAddress, sheet);
    RegionUtil.setBorderRight(BorderStyle.MEDIUM, rangeAddress, sheet);
    RegionUtil.setBorderBottom(BorderStyle.MEDIUM, rangeAddress, sheet);
}

구문은 다음과 같습니다.

sheet.addMergedRegion(new CellRangeAddress(start-col,end-col,start-cell,end-cell));

예를 들어:

sheet.addMergedRegion(new CellRangeAddress(4, 4, 0, 5));

여기서 셀 0에서 셀5는 4번째 행으로 병합됩니다.

언급URL : https://stackoverflow.com/questions/18716032/merging-cells-in-excel-using-apache-poi

반응형