JAVA 向带有公式的excel写入数据,获取公式计算结果
public static void main(String[] args) throws Exception {String url = "C:\\Users\\LQT\\Desktop\\test.xlsx";InputStream in = null;try {File file = new File(url);if (!file.exists()) {throw new Exception("文件不存在!");}in = new FileInputStream(file);// 读取整个ExcelXSSFWorkbook workbook = new XSSFWorkbook(in);// 获取第一个表单SheetXSSFSheet sheetAt = workbook.getSheetAt(0);XSSFRow titleRow = sheetAt.getRow(0);titleRow.createCell(0).setCellValue(1);titleRow.createCell(1).setCellValue(9);sheetAt.setForceFormulaRecalculation(true);//后面使用它来执行计算公式 核心代码FormulaEvaluator evaluator = workbook.getCreationHelper().createFormulaEvaluator();CellReference cellReference = new CellReference("C1");Row row = sheetAt.getRow(cellReference.getRow());Cell cell = row.getCell(cellReference.getCol());CellValue cellValue = evaluator.evaluate(cell);System.out.println(cellValue.getNumberValue());}catch (Exception e){e.printStackTrace();}finally {try {if(in != null){in.close();}}catch (Exception e){e.printStackTrace();}}}
excel 文件可以自己创建,上面示例公式为:C1=SUM(A1:B1);