Example usage for org.apache.poi.ss.util CellRangeAddress CellRangeAddress

List of usage examples for org.apache.poi.ss.util CellRangeAddress CellRangeAddress

Introduction

In this page you can find the example usage for org.apache.poi.ss.util CellRangeAddress CellRangeAddress.

Prototype

public CellRangeAddress(int firstRow, int lastRow, int firstCol, int lastCol) 

Source Link

Document

Creates new cell range.

Usage

From source file:org.fenixedu.academic.ui.struts.action.candidacy.degreeTransfer.DegreeTransferCandidacyProcessDA.java

License:Open Source License

private void createHeader(final StyledExcelSpreadsheet spreadsheet, final Degree degree) {
    // title//from w  w w . ja  va  2s  . com
    spreadsheet.newHeaderRow();
    spreadsheet.addCell(degree.getName(), spreadsheet.getExcelStyle().getTitleStyle());

    // empty row
    spreadsheet.newHeaderRow();

    // table header
    spreadsheet.newHeaderRow();
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.identification"));
    spreadsheet.addHeader(2, BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.degree.and.school"));
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.affinity"));
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.degreeNature"));
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.concludedUCs"));
    spreadsheet.addHeader(8, "");
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.approvedEctsRate"));
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.gradeRate"));
    spreadsheet.addHeader(
            BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.degreeTransfer.seriesCandidacyGrade"));
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.result"));

    spreadsheet.newHeaderRow();
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.number"));
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.name"));
    spreadsheet.addHeader(5, BundleUtil.getString(Bundle.APPLICATION, "label.number"));
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.gradeSum.abbr"));
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.approvedEcts"));
    spreadsheet.addHeader(BundleUtil.getString(Bundle.APPLICATION, "label.candidacy.enroledEcts"));

    // Id + N + Nome merge
    spreadsheet.getSheet().addMergedRegion(new CellRangeAddress(2, (short) 0, 2, (short) 1));
    // Degree name merge
    spreadsheet.getSheet().addMergedRegion(new CellRangeAddress(2, (short) 2, 3, (short) 2));
    // affinity merge
    spreadsheet.getSheet().addMergedRegion(new CellRangeAddress(2, (short) 3, 3, (short) 3));
    // degreeNature merge
    spreadsheet.getSheet().addMergedRegion(new CellRangeAddress(2, (short) 4, 3, (short) 4));
    // UCs merge
    spreadsheet.getSheet().addMergedRegion(new CellRangeAddress(2, (short) 5, 2, (short) 7));
    // A merge
    spreadsheet.getSheet().addMergedRegion(new CellRangeAddress(2, (short) 9, 3, (short) 9));
    // B merge
    spreadsheet.getSheet().addMergedRegion(new CellRangeAddress(2, (short) 10, 3, (short) 10));
    // C merge
    spreadsheet.getSheet().addMergedRegion(new CellRangeAddress(2, (short) 11, 3, (short) 11));
    // result merge
    spreadsheet.getSheet().addMergedRegion(new CellRangeAddress(2, (short) 12, 3, (short) 12));
}

From source file:org.gedantic.web.servlet.WorkbookCreator.java

License:Open Source License

/**
 * Autofit columns.//from  ww w.  j  ava2s .  c o  m
 */
private void autofitColumns() {
    sheet.addMergedRegion(new CellRangeAddress(0, 0, (short) 0, maxColNum));
    sheet.addMergedRegion(new CellRangeAddress(1, 1, (short) 0, maxColNum));
    for (int i = 0; i <= maxColNum; i++) {
        sheet.autoSizeColumn(i);
    }
}

From source file:org.generationcp.breeding.manager.crossingmanager.util.CrossingManagerExporter.java

License:Open Source License

private int writeStudyDetailsSection(HashMap<String, CellStyle> styles, HSSFSheet descriptionSheet,
        int startingRow) {
    CrossingManagerUploader uploader = this.crossesMade.getCrossingManagerUploader();

    int actualRow = startingRow - 1;
    int currentRow = actualRow;
    int ctr = 0;/*from w  ww  . j a va 2s . c o m*/

    for (TemplateStudyDetails studyDetail : TemplateStudyDetails.values()) {
        String header = studyDetail.getValue(); //get header from enum 
        currentRow = actualRow + ctr;

        HSSFRow row = descriptionSheet.createRow(currentRow);
        descriptionSheet.addMergedRegion(new CellRangeAddress(currentRow, currentRow, 1, 7));

        Cell labelCell = row.createCell(0);
        labelCell.setCellValue(header);
        labelCell.setCellStyle(styles.get(LABEL_STYLE));

        Cell valueCell = row.createCell(1);
        setStudyDetailCellValue(uploader, studyDetail, valueCell);

        ctr++;
    }

    //return the next row to write to. +2 because it's decremented at start of method
    return currentRow + 2;
}

From source file:org.generationcp.breeding.manager.nurserytemplate.util.NurseryTemplateManagerExporter.java

License:Open Source License

private int writeStudyDetailsSection(HashMap<String, CellStyle> styles, HSSFSheet descriptionSheet,
        int startingRow) {
    int actualRow = startingRow - 1;
    int currentRow = actualRow;
    int ctr = 0;//from   w  ww . java  2  s  .c  om

    for (TemplateStudyDetails studyDetail : TemplateStudyDetails.values()) {
        String header = studyDetail.getValue(); //get header from enum 
        currentRow = actualRow + ctr;

        HSSFRow row = descriptionSheet.createRow(currentRow);
        descriptionSheet.addMergedRegion(new CellRangeAddress(currentRow, currentRow, 1, 7));

        Cell labelCell = row.createCell(0);
        labelCell.setCellValue(header);
        labelCell.setCellStyle(styles.get(LABEL_STYLE));

        Cell valueCell = row.createCell(1);
        setStudyDetailCellValue(nurseryTemplateData, studyDetail, valueCell);

        ctr++;
    }

    //return the next row to write to. +2 because it's decremented at start of method
    return currentRow + 2;
}

From source file:org.haplo.jsinterface.generate.KGenerateXLS.java

License:Mozilla Public License

private CellRangeAddress styleInstructionCellRangeAddress(SheetStyleInstruction i) {
    return new CellRangeAddress(i.row0, i.row1, i.column0, i.column1);
}

From source file:org.hellojavaer.poi.excel.utils.write.ExcelWriteContext.java

License:Apache License

public Cell setCellValue(int firstRow, int lastRow, int firstCol, int lastCol, Object val) {
    CellRangeAddress cellRangeAddress = new CellRangeAddress(firstRow, lastRow, firstCol, lastCol);
    curSheet.addMergedRegion(cellRangeAddress);
    return setCellValue(firstRow, firstCol, val);
}

From source file:org.hil.children.service.impl.ChildrenManagerImpl.java

License:Open Source License

private static void copyRow(HSSFWorkbook workbook, HSSFSheet worksheet, int sourceRowNum,
        int destinationRowNum) {
    // Get the source / new row
    HSSFRow newRow = worksheet.getRow(destinationRowNum);
    HSSFRow sourceRow = worksheet.getRow(sourceRowNum);

    // If the row exist in destination, push down all rows by 1 else create a new row
    if (newRow != null) {
        worksheet.shiftRows(destinationRowNum, worksheet.getLastRowNum(), 1);
    } else {/*w w w .j  a  v  a 2s .  c om*/
        newRow = worksheet.createRow(destinationRowNum);
    }

    // Loop through source columns to add to new row
    for (int i = 0; i < sourceRow.getLastCellNum(); i++) {
        // Grab a copy of the old/new cell
        HSSFCell oldCell = sourceRow.getCell(i);
        HSSFCell newCell = newRow.createCell(i);

        // If the old cell is null jump to next cell
        if (oldCell == null) {
            newCell = null;
            continue;
        }

        // Copy style from old cell and apply to new cell
        HSSFCellStyle newCellStyle = workbook.createCellStyle();
        newCellStyle.cloneStyleFrom(oldCell.getCellStyle());

        newCell.setCellStyle(newCellStyle);

        // If there is a cell comment, copy
        if (newCell.getCellComment() != null) {
            newCell.setCellComment(oldCell.getCellComment());
        }

        // If there is a cell hyperlink, copy
        if (oldCell.getHyperlink() != null) {
            newCell.setHyperlink(oldCell.getHyperlink());
        }

        // Set the cell data type
        newCell.setCellType(oldCell.getCellType());

        // Set the cell data value
        switch (oldCell.getCellType()) {
        case Cell.CELL_TYPE_BLANK:
            newCell.setCellValue(oldCell.getStringCellValue());
            break;
        case Cell.CELL_TYPE_BOOLEAN:
            newCell.setCellValue(oldCell.getBooleanCellValue());
            break;
        case Cell.CELL_TYPE_ERROR:
            newCell.setCellErrorValue(oldCell.getErrorCellValue());
            break;
        case Cell.CELL_TYPE_FORMULA:
            newCell.setCellFormula(oldCell.getCellFormula());
            break;
        case Cell.CELL_TYPE_NUMERIC:
            newCell.setCellValue(oldCell.getNumericCellValue());
            break;
        case Cell.CELL_TYPE_STRING:
            newCell.setCellValue(oldCell.getRichStringCellValue());
            break;
        }
    }

    // If there are are any merged regions in the source row, copy to new row
    for (int i = 0; i < worksheet.getNumMergedRegions(); i++) {
        CellRangeAddress cellRangeAddress = worksheet.getMergedRegion(i);
        if (cellRangeAddress.getFirstRow() == sourceRow.getRowNum()) {
            CellRangeAddress newCellRangeAddress = new CellRangeAddress(newRow.getRowNum(),
                    (newRow.getRowNum() + (cellRangeAddress.getFirstRow() - cellRangeAddress.getLastRow())),
                    cellRangeAddress.getFirstColumn(), cellRangeAddress.getLastColumn());
            worksheet.addMergedRegion(newCellRangeAddress);
        }
    }
}

From source file:org.jplus.hyberbin.excel.service.BaseExcelService.java

License:Apache License

/**
 * sheet ?//from www. j a  va  2s .  c o m
 * @param sheet
 * @param row
 * @param length
 * @param data
 */
public static void addTitle(Sheet sheet, int row, int length, String data) {
    Row sheetRow = sheet.createRow(row);
    for (int i = 0; i < length; i++) {
        sheetRow.createCell(i);
    }
    CellStyle style = sheet.getWorkbook().createCellStyle(); // ?
    style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 
    style.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 
    CellRangeAddress cellRangeAddress = new CellRangeAddress(row, row, 0, length - 1);
    sheet.addMergedRegion(cellRangeAddress);
    Cell cell = sheetRow.getCell(0);
    cell.setCellStyle(style);
    cell.setCellValue(data);
}

From source file:org.jxstar.report.studio.ExportStatBO.java

/**
 * /*from w  ww  .ja v  a  2  s  .co m*/
 * @param fileTitle -- 
 * @param titles -- 
 * @param sheet -- 
 * @return
 */
private HSSFSheet createTitleArea(String fileTitle, String[] titles, HSSFSheet sheet) {
    HSSFCell sfCell = null;
    int rsCnt = titles.length + 1;
    HSSFWorkbook wb = sheet.getWorkbook();
    //?
    HSSFCellStyle titleStyle = expXls.createTitleStyle(wb);
    //?
    HSSFCellStyle headerStyle = expXls.createHeadStyle(wb);

    //1
    HSSFRow hfRow = sheet.createRow(0);
    hfRow.setHeightInPoints(25);
    for (int i = 0, n = rsCnt; i < n; i++) {
        sfCell = hfRow.createCell(i);
        sheet.setColumnWidth(i, 4000);//?
    }
    sfCell = hfRow.getCell(0);
    sheet.setColumnWidth(0, 448); //
    //??
    CellRangeAddress range = new CellRangeAddress(0, 0, 1, rsCnt - 1);
    sheet.addMergedRegion(range);

    //??
    sfCell = hfRow.getCell(1);
    sfCell.setCellType(HSSFCell.CELL_TYPE_STRING);
    sfCell.setCellValue(fileTitle);
    sfCell.setCellStyle(titleStyle);

    //
    hfRow = sheet.createRow(1);
    for (int i = 0, n = rsCnt; i < n; i++) {
        sfCell = hfRow.createCell(i);
        if (i == 0)
            continue;

        String colname = titles[i - 1];
        sfCell.setCellType(HSSFCell.CELL_TYPE_STRING);
        sfCell.setCellValue(colname);
        sfCell.setCellStyle(headerStyle);
    }

    return sheet;
}

From source file:org.jxstar.report.studio.ExportXlsBO.java

/**
 * /*from  w w  w  . ja  v a 2 s.c  o m*/
 * @param title -- 
 * @param lsCol -- 
 * @param sheet -- 
 * @return
 */
private HSSFSheet createTitleArea(String title, List<Map<String, String>> lsCol, HSSFSheet sheet) {
    HSSFCell sfCell = null;
    int rsCnt = lsCol.size() + 1;

    //
    HSSFRow hfRow = sheet.createRow(0);
    hfRow.setHeightInPoints(10);
    for (int i = 0, n = rsCnt; i < n; i++) {
        sfCell = hfRow.createCell(i);
        sheet.setColumnWidth(i, 4000);
    }
    sfCell = hfRow.getCell(0);
    sheet.setColumnWidth(0, 448); //

    //?
    hfRow = sheet.createRow(1);
    hfRow.setHeightInPoints(25);
    for (int i = 0, n = rsCnt; i < n; i++) {
        sfCell = hfRow.createCell(i);
    }
    //???6?
    int posi = rsCnt / 2;
    int fromCell = (((posi - 2) < 0) ? 0 : (posi - 2));
    int toCell = (((rsCnt - posi) < 0) ? 0 : (rsCnt - posi + 2));

    CellRangeAddress range = new CellRangeAddress(1, 1, fromCell, toCell);
    sheet.addMergedRegion(range);

    HSSFWorkbook wb = sheet.getWorkbook();

    //??
    sfCell = hfRow.getCell(fromCell);
    sfCell.setCellType(HSSFCell.CELL_TYPE_STRING);
    sfCell.setCellValue(title);
    sfCell.setCellStyle(createTitleStyle(wb));

    //
    hfRow = sheet.createRow(2);
    for (int i = 0, n = rsCnt; i < n; i++) {
        sfCell = hfRow.createCell(i);

        if (i != 0) {
            String colname = lsCol.get(i - 1).get("col_name");

            sfCell.setCellType(HSSFCell.CELL_TYPE_STRING);
            sfCell.setCellValue(colname);
            sfCell.setCellStyle(createHeadStyle(wb));
        }
    }

    return sheet;
}