Java Code Examples for org.apache.poi.ss.usermodel.Cell#setCellType()
The following examples show how to use
org.apache.poi.ss.usermodel.Cell#setCellType() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ExcelExportOfTemplateUtil.java From jeasypoi with Apache License 2.0 | 7 votes |
/** * 先判断删除,省得影响效率 * * @param sheet * @param map * @throws Exception */ private void deleteCell(Sheet sheet, Map<String, Object> map) throws Exception { Row row = null; Cell cell = null; int index = 0; while (index <= sheet.getLastRowNum()) { row = sheet.getRow(index++); if (row == null) { continue; } for (int i = row.getFirstCellNum(); i < row.getLastCellNum(); i++) { cell = row.getCell(i); if (row.getCell(i) != null && (cell.getCellType() == Cell.CELL_TYPE_STRING || cell.getCellType() == Cell.CELL_TYPE_NUMERIC)) { cell.setCellType(Cell.CELL_TYPE_STRING); String text = cell.getStringCellValue(); if (text.contains(IF_DELETE)) { if (Boolean.valueOf(eval(text.substring(text.indexOf(START_STR) + 2, text.indexOf(END_STR)).trim(), map).toString())) { PoiSheetUtility.deleteColumn(sheet, i); } cell.setCellValue(""); } } } } }
Example 2
Source File: ImportGradesHelper.java From sakai with Educational Community License v2.0 | 6 votes |
/** * Helper to map an Excel {@link Row} to a String[] so we can use the same methods to process it as the CSV * * @param row * @return */ private static String[] convertRow(final Row row, final int numCells) { final String[] s = new String[numCells]; Cell cell; for(int i = 0; i < numCells; i++) { cell = row.getCell(i); if(cell != null) { cell.setCellType(CellType.STRING); s[i] = StringUtils.trimToNull(cell.getStringCellValue()); } } return s; }
Example 3
Source File: GetRowIndexByConditionService.java From cs-actions with Apache License 2.0 | 6 votes |
public static void getMergedCell(final Sheet sheet, final int firstRowIndex, final int cIndex) { final int countMRegion = sheet.getNumMergedRegions(); for (int i = 0; i < countMRegion; i++) { CellRangeAddress range = sheet.getMergedRegion(i); final int firstRow = range.getFirstRow(); final int firstColumn = range.getFirstColumn(); for (int j = firstRowIndex; j < sheet.getLastRowNum(); j++) { final boolean isInRange = range.isInRange(j, cIndex); Row row = sheet.getRow(j); if (row == null) { row = sheet.createRow(j); } Cell cell = row.getCell(cIndex); if (cell == null) { cell = row.createCell(cIndex); } if (isInRange) if (!(j == firstRow && cIndex == firstColumn)) { cell.setCellType(CellType.ERROR); } } } }
Example 4
Source File: GenerateDoc.java From danyuan-application with Apache License 2.0 | 6 votes |
@SuppressWarnings("deprecation") private static XSSFSheet copySheet(XSSFSheet sheetFrom, XSSFSheet sheetTo) { // 初期化 CellRangeAddress region = null; Row rowFrom = null; Row rowTo = null; Cell cellFrom = null; Cell cellTo = null; // セル結合のコピー for (int i = 0; i < sheetFrom.getNumMergedRegions(); i++) { region = sheetFrom.getMergedRegion(i); if ((region.getFirstColumn() >= sheetFrom.getFirstRowNum()) && (region.getLastRow() <= sheetFrom.getLastRowNum())) { sheetTo.addMergedRegion(region); } } // セルのコピー for (int intRow = sheetFrom.getFirstRowNum(); intRow <= sheetFrom.getLastRowNum(); intRow++) { rowFrom = sheetFrom.getRow(intRow); rowTo = sheetTo.createRow(intRow); if (null == rowFrom) { continue; } rowTo.setHeight(rowFrom.getHeight()); for (int intCol = 0; intCol < rowFrom.getLastCellNum(); intCol++) { // セル幅のコピー sheetTo.setDefaultColumnStyle(intCol, sheetFrom.getColumnStyle(intCol)); sheetTo.setColumnWidth(intCol, sheetFrom.getColumnWidth(intCol)); cellFrom = rowFrom.getCell(intCol); cellTo = rowTo.createCell(intCol); if (null == cellFrom) { continue; } // セルスタイルとタイプのコピー cellTo.setCellStyle(cellFrom.getCellStyle()); cellTo.setCellType(cellFrom.getCellType()); // タイトル内容のコピー // 不同数据类型处理 int cellFromType = cellFrom.getCellType(); cellTo.setCellType(cellFromType); if (cellFromType == HSSFCell.CELL_TYPE_NUMERIC) { if (HSSFDateUtil.isCellDateFormatted(cellFrom)) { cellTo.setCellValue(cellFrom.getDateCellValue()); } else { cellTo.setCellValue(cellFrom.getNumericCellValue()); } } else if (cellFromType == HSSFCell.CELL_TYPE_STRING) { cellTo.setCellValue(cellFrom.getRichStringCellValue()); } else if (cellFromType == HSSFCell.CELL_TYPE_BLANK) { // nothing21 } else if (cellFromType == HSSFCell.CELL_TYPE_BOOLEAN) { cellTo.setCellValue(cellFrom.getBooleanCellValue()); } else if (cellFromType == HSSFCell.CELL_TYPE_ERROR) { cellTo.setCellErrorValue(cellFrom.getErrorCellValue()); } else if (cellFromType == HSSFCell.CELL_TYPE_FORMULA) { cellTo.setCellFormula(cellFrom.getCellFormula()); } else { // nothing29 } } } // 枠線の設定 sheetTo.setDisplayGridlines(false); // sheetTo.setDisplayGuts(true); // sheetTo.setDisplayRowColHeadings(true); // 剪切 // sheetTo.shiftRows(13, 15, 31, false, false, false); // Excelのズーム設定 sheetTo.setZoom(85, 100); // シートを戻る。 return sheetTo; }
Example 5
Source File: BaseFormulaEvaluator.java From lams with GNU General Public License v2.0 | 6 votes |
protected static void setCellType(Cell cell, CellValue cv) { CellType cellType = cv.getCellTypeEnum(); switch (cellType) { case BOOLEAN: case ERROR: case NUMERIC: case STRING: cell.setCellType(cellType); return; case BLANK: // never happens - blanks eventually get translated to zero throw new IllegalArgumentException("This should never happen. Blanks eventually get translated to zero."); case FORMULA: // this will never happen, we have already evaluated the formula throw new IllegalArgumentException("This should never happen. Formulas should have already been evaluated."); default: throw new IllegalStateException("Unexpected cell value type (" + cellType + ")"); } }
Example 6
Source File: AbstractDateCellConverter.java From xlsmapper with Apache License 2.0 | 6 votes |
@Override protected void setupCell(final Cell cell, final Optional<T> cellValue) throws TypeBindException { // 書式を設定する final CellStyleProxy cellStyle = new CellStyleProxy(cell); cellStyle.setDataFormat(settingExcelPattern.orElse(null), defaultExcelPattern, getConfiguration().getCellFormatter()); if(cellValue.isPresent()) { boolean isStartDate1904 = POIUtils.isDateStart1904(cell.getSheet().getWorkbook()); POIUtils.setCellValueAsDate(cell, cellValue.get(), isStartDate1904); } else { cell.setCellType(CellType.BLANK); } }
Example 7
Source File: ExcelUtil.java From phone with Apache License 2.0 | 6 votes |
public static String getStringValue(Cell cell) { switch (cell.getCellTypeEnum()) { case BOOLEAN: return cell.getBooleanCellValue() ? "1" : "0"; case FORMULA: return cell.getCellFormula(); case NUMERIC: cell.setCellType(CellType.STRING); return cell.getStringCellValue(); case STRING: return cell.getStringCellValue(); default: return ""; } }
Example 8
Source File: CellUtils.java From java-master with Apache License 2.0 | 5 votes |
public static void fillFuncCell(Cell cell, String funcStr, CellStyle style) { cell.setCellType(CellType.NUMERIC); cell.setCellFormula(funcStr); if (funcStr == null) { return; } cell.setCellStyle(style); }
Example 9
Source File: SetCellConverterFactory.java From xlsmapper with Apache License 2.0 | 5 votes |
@Override protected void setupCell(final Cell cell, final Optional<Set> cellValue) throws TypeBindException { if(cellValue.isPresent()) { cell.setCellValue(textFormatter.format(cellValue.get())); } else { cell.setCellType(CellType.BLANK); } }
Example 10
Source File: DocumentInfoSheet.java From tools with Apache License 2.0 | 5 votes |
protected Cell getOrCreateDataCell(int colNum) { Cell cell = getDataRow().getCell(colNum); if (cell == null) { cell = getDataRow().createCell(colNum); cell.setCellType(CellType.NUMERIC); } return cell; }
Example 11
Source File: SheetUtility.java From openbd-core with GNU General Public License v3.0 | 5 votes |
public static void cloneCell( Cell cNew, Cell cOld ){ cNew.setCellComment( cOld.getCellComment() ); cNew.setCellStyle( cOld.getCellStyle() ); cNew.setCellType( cOld.getCellType() ); switch ( cNew.getCellType() ){ case Cell.CELL_TYPE_BOOLEAN:{ cNew.setCellValue( cOld.getBooleanCellValue() ); break; } case Cell.CELL_TYPE_NUMERIC:{ cNew.setCellValue( cOld.getNumericCellValue() ); break; } case Cell.CELL_TYPE_STRING:{ cNew.setCellValue( cOld.getStringCellValue() ); break; } case Cell.CELL_TYPE_ERROR:{ cNew.setCellValue( cOld.getErrorCellValue() ); break; } case Cell.CELL_TYPE_FORMULA:{ cNew.setCellFormula( cOld.getCellFormula() ); break; } case Cell.CELL_TYPE_BLANK:{ cNew.setCellValue( cOld.getNumericCellValue() ); break; } } }
Example 12
Source File: CrosstabXLSExporter.java From Knowage-Server with GNU Affero General Public License v3.0 | 5 votes |
/** * Builds the rows' headers recursively with this order: |-----|-----|-----| | | | 3 | | | |-----| | | 2 | 4 | | | |-----| | 1 | | 5 | | |-----|-----| | | | * 7 | | | 6 |-----| | | | 8 | |-----|-----|-----| | | | 11 | | 9 | 10 |-----| | | | 12 | |-----|-----|-----| * * @param sheet * The sheet of the XLS file * @param siblings * The siblings nodes of the headers structure * @param rowNum * The row number where the first sibling must be inserted * @param columnNum * The column number where the siblings must be inserted * @param createHelper * The file creation helper * @throws JSONException */ protected void buildRowsHeaders(Sheet sheet, CrossTab cs, List<Node> siblings, int rowNum, int columnNum, CreationHelper createHelper, Locale locale, CellStyle cellStyle) throws JSONException { int rowsCounter = rowNum; for (int i = 0; i < siblings.size(); i++) { Node aNode = siblings.get(i); List<Node> childs = aNode.getChilds(); Row row = sheet.getRow(rowsCounter); Cell cell = row.createCell(columnNum); String text = aNode.getDescription(); if (cs.isMeasureOnRow() && (childs == null || childs.size() <= 0)) { // apply the measure scale factor text = MeasureScaleFactorOption.getScaledName(text, cs.getMeasureScaleFactor(text), locale); } cell.setCellValue(createHelper.createRichTextString(text)); cell.setCellType(this.getCellTypeString()); cell.setCellStyle(cellStyle); int descendants = aNode.getLeafsNumber(); if (descendants > 1) { sheet.addMergedRegion(new CellRangeAddress(rowsCounter, // first row (0-based) rowsCounter + descendants - 1, // last row (0-based) columnNum, // first column (0-based) columnNum // last column (0-based) )); } if (childs != null && childs.size() > 0) { buildRowsHeaders(sheet, cs, childs, rowsCounter, columnNum + 1, createHelper, locale, cellStyle); } int increment = descendants > 1 ? descendants : 1; rowsCounter = rowsCounter + increment; } }
Example 13
Source File: ExcelExportOfTemplateUtil.java From easypoi with Apache License 2.0 | 5 votes |
/** * 先判断删除,省得影响效率 * @param sheet * @param map * @throws Exception */ private void deleteCell(Sheet sheet, Map<String, Object> map) throws Exception { Row row = null; Cell cell = null; int index = 0; while (index <= sheet.getLastRowNum()) { row = sheet.getRow(index++); if (row == null) { continue; } for (int i = row.getFirstCellNum(); i < row.getLastCellNum(); i++) { cell = row.getCell(i); if (row.getCell(i) != null && (cell.getCellType() == Cell.CELL_TYPE_STRING || cell.getCellType() == Cell.CELL_TYPE_NUMERIC)) { cell.setCellType(Cell.CELL_TYPE_STRING); String text = cell.getStringCellValue(); if (text.contains(IF_DELETE)) { if (Boolean.valueOf(eval( text.substring(text.indexOf(START_STR) + 2, text.indexOf(END_STR)) .trim(), map).toString())) { PoiSheetUtility.deleteColumn(sheet, i); } cell.setCellValue(""); } } } } }
Example 14
Source File: ExcelUtils.java From onetwo with Apache License 2.0 | 5 votes |
public static void clearRowValue(Row row){ if(row==null) return ; for(Cell cell : row){ cell.setCellType(Cell.CELL_TYPE_STRING); cell.setCellValue(""); } }
Example 15
Source File: ExcelUtils.java From onetwo with Apache License 2.0 | 4 votes |
public static void copyRow(Sheet worksheet, Row newRow, Row sourceRow) { Workbook workbook = worksheet.getWorkbook(); for (int i = 0; i < sourceRow.getLastCellNum(); i++) { Cell oldCell = sourceRow.getCell(i); Cell newCell = newRow.createCell(i); if (oldCell == null) { newCell = null; continue; } CellStyle newCellStyle = workbook.createCellStyle(); newCellStyle.cloneStyleFrom(oldCell.getCellStyle()); newCell.setCellStyle(newCellStyle); if (oldCell.getCellComment() != null) { newCell.setCellComment(oldCell.getCellComment()); } if (oldCell.getHyperlink() != null) { newCell.setHyperlink(oldCell.getHyperlink()); } newCell.setCellType(oldCell.getCellType()); 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; } } 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.getLastRow() - cellRangeAddress.getFirstRow() )), cellRangeAddress.getFirstColumn(), cellRangeAddress.getLastColumn()); worksheet.addMergedRegion(newCellRangeAddress); } } }
Example 16
Source File: GetRowIndexByConditionService.java From cs-actions with Apache License 2.0 | 4 votes |
private static void processFormulaColumn(final Workbook excelDoc, final Sheet worksheet, final int firstRow, final int columnIndex) { final FormulaEvaluator evaluator = excelDoc.getCreationHelper().createFormulaEvaluator(); for (int i = firstRow; i <= worksheet.getLastRowNum(); i++) { final Row row = worksheet.getRow(i); if (row != null) { final Cell cell = row.getCell(columnIndex); if (cell != null && (cell.getCellType() != CellType.BLANK)) { //formula type if (cell.getCellType() == CellType.FORMULA) { CellValue cellValue = evaluator.evaluate(cell); switch (cellValue.getCellType()) { case BOOLEAN: cell.setCellType(CellType.STRING); break; case NUMERIC: cell.setCellType(CellType.NUMERIC); break; case STRING: if (StringUtils.isBlank(cell.getStringCellValue())) { cell.setCellType(CellType.BLANK); } else { cell.setCellType(CellType.STRING); } break; case BLANK: break; case ERROR: break; // CELL_TYPE_FORMULA will never happen case FORMULA: break; } } } } } }
Example 17
Source File: WorkbookReaderFactory.java From onetwo with Apache License 2.0 | 4 votes |
protected String getAsString(Cell cell){ cell.setCellType(Cell.CELL_TYPE_STRING); return StringUtils.trimToEmpty(cell.getStringCellValue()); }
Example 18
Source File: SpreadsheetSetCellValue.java From openbd-core with GNU General Public License v3.0 | 4 votes |
public cfData execute( cfSession _session, List<cfData> parameters ) throws cfmRunTimeException { cfSpreadSheetData spreadsheet = null; cfData value; int rowNo, columnNo; /* * Collect up the parameters */ spreadsheet = (cfSpreadSheetData)parameters.get(3); value = parameters.get(2); rowNo = parameters.get(1).getInt() - 1; columnNo = parameters.get(0).getInt() - 1; if ( rowNo < 0 ) throwException(_session, "row must be 1 or greater (" + rowNo + ")"); if ( columnNo < 0 ) throwException(_session, "column must be 1 or greater (" + columnNo + ")"); /* * Perform the insertion */ Sheet sheet = spreadsheet.getActiveSheet(); Row row = sheet.getRow( rowNo ); if ( row == null ) row = sheet.createRow( rowNo ); Cell cell = row.getCell( columnNo ); if ( cell == null ) cell = row.createCell( columnNo ); if ( value.getDataType() == cfData.CFNUMBERDATA ){ cell.setCellValue( value.getDouble() ); cell.setCellType( Cell.CELL_TYPE_NUMERIC ); }else if ( value.getDataType() == cfData.CFDATEDATA ){ cell.setCellValue( new Date( value.getDateLong() ) ); }else if ( value.getDataType() == cfData.CFBOOLEANDATA ){ cell.setCellValue( value.getBoolean() ); cell.setCellType( Cell.CELL_TYPE_BOOLEAN ); }else{ cell.setCellValue( value.getString() ); cell.setCellType( Cell.CELL_TYPE_STRING ); } return cfBooleanData.TRUE; }
Example 19
Source File: Util.java From Knowage-Server with GNU Affero General Public License v3.0 | 4 votes |
private static void copyCell(Cell oldCell, Cell newCell, List<CellStyle> styleList) { if (styleList != null) { if (oldCell.getSheet().getWorkbook() == newCell.getSheet().getWorkbook()) { newCell.setCellStyle(oldCell.getCellStyle()); } else { DataFormat newDataFormat = newCell.getSheet().getWorkbook().createDataFormat(); CellStyle newCellStyle = getSameCellStyle(oldCell, newCell, styleList); if (newCellStyle == null) { Font oldFont = oldCell.getSheet().getWorkbook().getFontAt(oldCell.getCellStyle().getFontIndex()); Font newFont = newCell.getSheet().getWorkbook().findFont(oldFont.getBoldweight(), oldFont.getColor(), oldFont.getFontHeight(), oldFont.getFontName(), oldFont.getItalic(), oldFont.getStrikeout(), oldFont.getTypeOffset(), oldFont.getUnderline()); if (newFont == null) { newFont = newCell.getSheet().getWorkbook().createFont(); newFont.setBoldweight(oldFont.getBoldweight()); newFont.setColor(oldFont.getColor()); newFont.setFontHeight(oldFont.getFontHeight()); newFont.setFontName(oldFont.getFontName()); newFont.setItalic(oldFont.getItalic()); newFont.setStrikeout(oldFont.getStrikeout()); newFont.setTypeOffset(oldFont.getTypeOffset()); newFont.setUnderline(oldFont.getUnderline()); newFont.setCharSet(oldFont.getCharSet()); } short newFormat = newDataFormat.getFormat(oldCell.getCellStyle().getDataFormatString()); newCellStyle = newCell.getSheet().getWorkbook().createCellStyle(); newCellStyle.setFont(newFont); newCellStyle.setDataFormat(newFormat); newCellStyle.setAlignment(oldCell.getCellStyle().getAlignment()); newCellStyle.setHidden(oldCell.getCellStyle().getHidden()); newCellStyle.setLocked(oldCell.getCellStyle().getLocked()); newCellStyle.setWrapText(oldCell.getCellStyle().getWrapText()); newCellStyle.setBorderBottom(oldCell.getCellStyle().getBorderBottom()); newCellStyle.setBorderLeft(oldCell.getCellStyle().getBorderLeft()); newCellStyle.setBorderRight(oldCell.getCellStyle().getBorderRight()); newCellStyle.setBorderTop(oldCell.getCellStyle().getBorderTop()); newCellStyle.setBottomBorderColor(oldCell.getCellStyle().getBottomBorderColor()); newCellStyle.setFillBackgroundColor(oldCell.getCellStyle().getFillBackgroundColor()); newCellStyle.setFillForegroundColor(oldCell.getCellStyle().getFillForegroundColor()); newCellStyle.setFillPattern(oldCell.getCellStyle().getFillPattern()); newCellStyle.setIndention(oldCell.getCellStyle().getIndention()); newCellStyle.setLeftBorderColor(oldCell.getCellStyle().getLeftBorderColor()); newCellStyle.setRightBorderColor(oldCell.getCellStyle().getRightBorderColor()); newCellStyle.setRotation(oldCell.getCellStyle().getRotation()); newCellStyle.setTopBorderColor(oldCell.getCellStyle().getTopBorderColor()); newCellStyle.setVerticalAlignment(oldCell.getCellStyle().getVerticalAlignment()); styleList.add(newCellStyle); } newCell.setCellStyle(newCellStyle); } } switch (oldCell.getCellType()) { case Cell.CELL_TYPE_STRING: newCell.setCellValue(oldCell.getStringCellValue()); break; case Cell.CELL_TYPE_NUMERIC: newCell.setCellValue(oldCell.getNumericCellValue()); break; case Cell.CELL_TYPE_BLANK: newCell.setCellType(Cell.CELL_TYPE_BLANK); 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()); formulaInfoList.add(new FormulaInfo(oldCell.getSheet().getSheetName(), oldCell.getRowIndex(), oldCell.getColumnIndex(), oldCell.getCellFormula())); break; default: break; } }
Example 20
Source File: GenerateDoc.java From danyuan-application with Apache License 2.0 | 4 votes |
/** * @方法名 copySheet * @功能 复制sheet * @参数 @param sheetFrom * @参数 @param sheetTo * @参数 @return * @返回 HSSFSheet * @author Administrator * @throws */ @SuppressWarnings("deprecation") private static HSSFSheet copySheet(HSSFSheet sheetFrom, HSSFSheet sheetTo) { // 初期化 CellRangeAddress region = null; Row rowFrom = null; Row rowTo = null; Cell cellFrom = null; Cell cellTo = null; // セル結合のコピー for (int i = 0; i < sheetFrom.getNumMergedRegions(); i++) { region = sheetFrom.getMergedRegion(i); if ((region.getFirstColumn() >= sheetFrom.getFirstRowNum()) && (region.getLastRow() <= sheetFrom.getLastRowNum())) { sheetTo.addMergedRegion(region); } } // セルのコピー for (int intRow = sheetFrom.getFirstRowNum(); intRow <= sheetFrom.getLastRowNum(); intRow++) { rowFrom = sheetFrom.getRow(intRow); rowTo = sheetTo.createRow(intRow); if (null == rowFrom) { continue; } rowTo.setHeight(rowFrom.getHeight()); for (int intCol = 0; intCol < rowFrom.getLastCellNum(); intCol++) { // セル幅のコピー sheetTo.setDefaultColumnStyle(intCol, sheetFrom.getColumnStyle(intCol)); sheetTo.setColumnWidth(intCol, sheetFrom.getColumnWidth(intCol)); cellFrom = rowFrom.getCell(intCol); cellTo = rowTo.createCell(intCol); if (null == cellFrom) { continue; } // セルスタイルとタイプのコピー cellTo.setCellStyle(cellFrom.getCellStyle()); cellTo.setCellType(cellFrom.getCellType()); // タイトル内容のコピー // 不同数据类型处理 int cellFromType = cellFrom.getCellType(); cellTo.setCellType(cellFromType); if (cellFromType == HSSFCell.CELL_TYPE_NUMERIC) { if (HSSFDateUtil.isCellDateFormatted(cellFrom)) { cellTo.setCellValue(cellFrom.getDateCellValue()); } else { cellTo.setCellValue(cellFrom.getNumericCellValue()); } } else if (cellFromType == HSSFCell.CELL_TYPE_STRING) { cellTo.setCellValue(cellFrom.getRichStringCellValue()); } else if (cellFromType == HSSFCell.CELL_TYPE_BLANK) { // nothing21 } else if (cellFromType == HSSFCell.CELL_TYPE_BOOLEAN) { cellTo.setCellValue(cellFrom.getBooleanCellValue()); } else if (cellFromType == HSSFCell.CELL_TYPE_ERROR) { cellTo.setCellErrorValue(cellFrom.getErrorCellValue()); } else if (cellFromType == HSSFCell.CELL_TYPE_FORMULA) { cellTo.setCellFormula(cellFrom.getCellFormula()); } else { // nothing29 } } } // 枠線の設定 sheetTo.setDisplayGridlines(false); // sheetTo.setDisplayGuts(true); // sheetTo.setDisplayRowColHeadings(true); // 剪切 // sheetTo.shiftRows(13, 15, 31, false, false, false); // Excelのズーム設定 sheetTo.setZoom(85, 100); // シートを戻る。 return sheetTo; }