java XSSFWorkbook excel 公式计算

发布时间 2023-08-09 11:30:44作者: 星空物语之韵

excel 公式计算

// 创建一个工作薄
        XSSFWorkbook workbook = new XSSFWorkbook();

//如果是最后一列添加一个求和计算,将结果放到同一列最后一个。dataLists 数据列表
        XSSFSheet sheet = workbook.getSheet(replaceSpecStr(sheetNames.get(0)));
        Row row2 = sheet.createRow(dataLists.get(0).size()+1);//行
        Cell formulaCell6 = row2.createCell(6);//列
        int num = dataLists.get(0).size();
        //设置公式
        formulaCell6.setCellFormula("SUM(G2:G"+num+")");

        Cell formulaCell10 = row2.createCell(10);//列
        //设置公式
        formulaCell10.setCellFormula("SUM(K2:K"+num+")");

        Cell formulaCell11 = row2.createCell(11);//列
        //设置公式
        formulaCell11.setCellFormula("SUM(L2:L"+num+")");
        //设置公式
        Cell formulaCell12 = row2.createCell(12);//列
        formulaCell12.setCellFormula("SUM(M2:M"+num+")");
        //目前为止,还不能算出公式的值,我们需要使用POI的XSSFFormulaEvaluator 来计算值 :
        //这里的转型,主要是对大文件(xss)和普通文件不同(hss)
        XSSFFormulaEvaluator formulaEvaluator =
                (XSSFFormulaEvaluator) workbook.getCreationHelper().createFormulaEvaluator();
        formulaEvaluator.evaluateAll();