XSSFCell 병합


/**
 * 병합 셀을 생성한다.
 * 세로 맞춤 : 가운데
 * 테두리 : 모두
 * @param row
 * @param nStart    시작 셀 인덱스
 * @param nEnd      종료 셀 인덱스
 * @param font      글꼴
 * @param bgColor   배경색
 * @param hAlign    가로 맞춤
 * @param border    테두리
 * @return
 */
private XSSFCell createMergedCell(XSSFRow row, int nStart, int nEnd, Font font, XSSFColor bgColor, short hAlign, short border)
{
    short vAlign = CellStyle.VERTICAL_CENTER;
    
    XSSFCell returnCell = null;
    
    XSSFSheet sheet = row.getSheet();
    XSSFWorkbook wb = sheet.getWorkbook();
    XSSFCellStyle cs = wb.createCellStyle();
    
    //정렬
    cs.setAlignment(hAlign);
    cs.setVerticalAlignment(vAlign);
    
    //테두리 설정
    cs.setBorderTop(border);
    cs.setBorderRight(border);
    cs.setBorderBottom(border);
    cs.setBorderLeft(border);
    
    //글꼴 설정
    cs.setFont(font);
    
    //배경색 설정
    if (bgColor != null)
    {
        cs.setFillForegroundColor(bgColor);
        cs.setFillPattern(CellStyle.SOLID_FOREGROUND);
    }
    
    //셀 생성
    for (int i = nStart; i <= nEnd; i++)
    {
        XSSFCell cell = row.createCell(i);
        
        if (i == nStart)
        {
            returnCell = cell;
        }
        
        cell.setCellStyle(cs);
    }
    
    //병합 영역 설정
    sheet.addMergedRegion(new CellRangeAddress(row.getRowNum(), row.getRowNum(), nStart, nEnd));
    
    return returnCell;
}

출처: http://neopang.tistory.com/entry/POI-이용-Excel-병합-셀-생성 [팡이네]


답글 남기기

이메일 주소는 공개되지 않습니다.