/** * @param workbook The workbook to perform the formula evaluations in * @param stabilityClassifier used to optimise caching performance. Pass <code>null</code> * for the (conservative) assumption that any cell may have its definition changed after * evaluation begins. * @param udfFinder pass <code>null</code> for default (AnalysisToolPak only) */ public static HSSFFormulaEvaluator create(HSSFWorkbook workbook, IStabilityClassifier stabilityClassifier, UDFFinder udfFinder) { return new HSSFFormulaEvaluator(workbook, stabilityClassifier, udfFinder); }
/** * Creates a HSSFFormulaEvaluator, the object that evaluates formula cells. * * @return a HSSFFormulaEvaluator instance */ @Override public HSSFFormulaEvaluator createFormulaEvaluator(){ return new HSSFFormulaEvaluator(workbook); }
/** * Loops over all cells in all sheets of the supplied * workbook. * For cells that contain formulas, their formulas are * evaluated, and the results are saved. These cells * remain as formula cells. * For cells that do not contain formulas, no changes * are made. * This is a helpful wrapper around looping over all * cells, and calling evaluateFormulaCell on each one. */ public static void evaluateAllFormulaCells(HSSFWorkbook wb) { evaluateAllFormulaCells(wb, new HSSFFormulaEvaluator(wb)); }
InputStream inp =getClass().getResourceAsStream("filename.xls")); Workbook wb = WorkbookFactory.create(inp); DataFormatter objDefaultFormat = new DataFormatter(); FormulaEvaluator objFormulaEvaluator = new HSSFFormulaEvaluator((HSSFWorkbook) wb); Sheet sheet= wb.getSheetAt(0); Iterator<Row> objIterator = sheet.rowIterator(); while(objIterator.hasNext()){ Row row = objIterator.next(); Cell cellValue = row.getCell(0); objFormulaEvaluator.evaluate(cellValue); // This will evaluate the cell, And any type of cell will return string value String cellValueStr = objDefaultFormat.formatCellValue(cellValue,objFormulaEvaluator); }
/** * Creates a HSSFFormulaEvaluator, the object that evaluates formula cells. * * @return a HSSFFormulaEvaluator instance */ @Override public HSSFFormulaEvaluator createFormulaEvaluator(){ return new HSSFFormulaEvaluator(workbook); }
/** * @param stabilityClassifier used to optimise caching performance. Pass <code>null</code> * for the (conservative) assumption that any cell may have its definition changed after * evaluation begins. * @param udfFinder pass <code>null</code> for default (AnalysisToolPak only) */ public static HSSFFormulaEvaluator create(HSSFWorkbook workbook, IStabilityClassifier stabilityClassifier, UDFFinder udfFinder) { return new HSSFFormulaEvaluator(workbook, stabilityClassifier, udfFinder); }
/** * @param workbook The workbook to perform the formula evaluations in * @param stabilityClassifier used to optimise caching performance. Pass <code>null</code> * for the (conservative) assumption that any cell may have its definition changed after * evaluation begins. * @param udfFinder pass <code>null</code> for default (AnalysisToolPak only) */ public static HSSFFormulaEvaluator create(HSSFWorkbook workbook, IStabilityClassifier stabilityClassifier, UDFFinder udfFinder) { return new HSSFFormulaEvaluator(workbook, stabilityClassifier, udfFinder); }
/** * @param stabilityClassifier used to optimise caching performance. Pass <code>null</code> * for the (conservative) assumption that any cell may have its definition changed after * evaluation begins. * @param udfFinder pass <code>null</code> for default (AnalysisToolPak only) */ public static HSSFFormulaEvaluator create(HSSFWorkbook workbook, IStabilityClassifier stabilityClassifier, UDFFinder udfFinder) { return new HSSFFormulaEvaluator(workbook, stabilityClassifier, udfFinder); }
/** * Creates a HSSFFormulaEvaluator, the object that evaluates formula cells. * * @return a HSSFFormulaEvaluator instance */ public HSSFFormulaEvaluator createFormulaEvaluator(){ return new HSSFFormulaEvaluator(workbook); }
/** * Creates a HSSFFormulaEvaluator, the object that evaluates formula cells. * * @return a HSSFFormulaEvaluator instance */ public HSSFFormulaEvaluator createFormulaEvaluator(){ return new HSSFFormulaEvaluator(workbook); }
@Override protected FormulaEvaluator doWithHSSFWorkbook(HSSFWorkbook workbook) { return new HSSFFormulaEvaluator(workbook); }
public ExcelFormulaEvaluator (@Nonnull final Workbook aWB, @Nullable final IStabilityClassifier aStability) { m_aEvaluator = aWB instanceof HSSFWorkbook ? new HSSFFormulaEvaluator ((HSSFWorkbook) aWB, aStability) : XSSFFormulaEvaluator.create ((XSSFWorkbook) aWB, aStability, null); }
public ExcelFormulaEvaluator (@Nonnull final Workbook aWB, @Nullable final IStabilityClassifier aStability) { m_aEvaluator = aWB instanceof HSSFWorkbook ? new HSSFFormulaEvaluator ((HSSFWorkbook) aWB, aStability) : XSSFFormulaEvaluator.create ((XSSFWorkbook) aWB, aStability, null); }
/** * Loops over all cells in all sheets of the supplied * workbook. * For cells that contain formulas, their formulas are * evaluated, and the results are saved. These cells * remain as formula cells. * For cells that do not contain formulas, no changes * are made. * This is a helpful wrapper around looping over all * cells, and calling evaluateFormulaCell on each one. */ public static void evaluateAllFormulaCells(HSSFWorkbook wb) { evaluateAllFormulaCells(wb, new HSSFFormulaEvaluator(wb)); }
/** * Loops over all cells in all sheets of the supplied * workbook. * For cells that contain formulas, their formulas are * evaluated, and the results are saved. These cells * remain as formula cells. * For cells that do not contain formulas, no changes * are made. * This is a helpful wrapper around looping over all * cells, and calling evaluateFormulaCell on each one. */ public static void evaluateAllFormulaCells(HSSFWorkbook wb) { evaluateAllFormulaCells(wb, new HSSFFormulaEvaluator(wb)); }
/** * Loops over all cells in all sheets of the supplied * workbook. * For cells that contain formulas, their formulas are * evaluated, and the results are saved. These cells * remain as formula cells. * For cells that do not contain formulas, no changes * are made. * This is a helpful wrapper around looping over all * cells, and calling evaluateFormulaCell on each one. */ public static void evaluateAllFormulaCells(HSSFWorkbook wb) { evaluateAllFormulaCells(wb, new HSSFFormulaEvaluator(wb)); }
/** * Returns a formula evaluator that is loaded with the functions that * have been supplied. * * @param fileName Specifies if XSSF or HSSF should be used for * the evaluator * @return A {@link FormulaEvaluator} constructed accordingly */ protected FormulaEvaluator getEvaluator(String fileName) { FormulaEvaluator evaluator; if (fileName.endsWith(".xlsx")) { if(xlsMacroList.size() > 0) { evaluator = XSSFFormulaEvaluator.create((XSSFWorkbook) workbook, null, getFunctions()); } evaluator = new XSSFFormulaEvaluator((XSSFWorkbook) workbook); } else { if(xlsMacroList.size() > 0) { evaluator = HSSFFormulaEvaluator.create((HSSFWorkbook)workbook, null, getFunctions()); } evaluator = new HSSFFormulaEvaluator((HSSFWorkbook) workbook); } return evaluator; }