zoukankan      html  css  js  c++  java
  • POI对公式的支持

    POI对公式的支持

    2009年11月26日 09:48:00 山巅 阅读数:7078 标签: stringc 更多

    个人分类: POI

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/shandian534/article/details/4876018

    一、写入公式:

    1、取得单元格 cell = contentRow.createCell(6);

    2、设置单元格的类型为公式 cell.setCellType(HSSFCell.CELL_TYPE_FORMULA);

    3、设置单元格的样式 cell.setCellStyle(excelUtil.getDoubleStyle(workbook));

    4、设置单元格的公式 cell.setCellFormula("SUM(G3:G"+startRow+")");

    二、读出公式:

    FileInputStream fis = new FileInputStream("c:/temp/test.xls");
    Workbook wb = new HSSFWorkbook(fis); //or new XSSFWorkbook("c:/temp/test.xls")
    Sheet sheet = wb.getSheetAt(0);
    FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();

    // suppose your formula is in B3
    CellReference cellReference = new CellReference("B3"); 
    Row row = sheet.getRow(cellReference.getRow());
    Cell cell = row.getCell(cellReference.getCol()); 

    CellValue cellValue = evaluator.evaluate(cell);

    switch (cellValue.getCellType()) {
        case Cell.CELL_TYPE_BOOLEAN:
            System.out.println(cellValue.getBooleanValue());
            break;
        case Cell.CELL_TYPE_NUMERIC:
            System.out.println(cellValue.getNumberValue());
            break;
        case Cell.CELL_TYPE_STRING:
            System.out.println(cellValue.getStringValue());
            break;
        case Cell.CELL_TYPE_BLANK:
            break;
        case Cell.CELL_TYPE_ERROR:
            break;

        // CELL_TYPE_FORMULA will never happen
        case Cell.CELL_TYPE_FORMULA: 
            break;
    }

  • 相关阅读:
    手把手教NIS Edit安装向导的使用
    使用HM NIS Edit制作软件安装包
    有哪些适合学习英语的纪录片 ?
    Android入门(一)AndroidStudio下的APP目录结构介绍
    架构和框架的区别
    Git版本控制的快捷方式(GITCHEAT SHEET)
    DOS下启动MySQL时输入net start mysql 提示服务名无效的问题
    个人搜查小问题
    oozie说明(本文参考多处,自己留看)
    oozie fork join结点
  • 原文地址:https://www.cnblogs.com/grj001/p/12225593.html
Copyright © 2011-2022 走看看