平方公式评估

我们使用sqlsheet库来读取Excel表格中的数据。 该lib工作正常,但有一个领域的公式计算的问题。 该单元格的值始终为空。

有没有办法告诉sqlsheet在执行数据查询之前计算单元格公式?

我反编译了驱动程序,并在net.pcal.sqlsheet的XLSResultSet中添加了以下hssf单元格检查:

public static String getStrVal(Cell cell) { long ival = 0; Boolean bool = false; String cData = ""; switch(cell.getCellType()){ case Cell.CELL_TYPE_BLANK: cData = null; break; case Cell.CELL_TYPE_STRING: cData = cell.getStringCellValue(); break; case Cell.CELL_TYPE_FORMULA: switch(cell.getCachedFormulaResultType()) { case Cell.CELL_TYPE_NUMERIC: cData = String.valueOf(cell.getNumericCellValue()); break; case Cell.CELL_TYPE_STRING: cData = String.valueOf(cell.getRichStringCellValue()); break; } break; default: cData = "unsupported cell type"; break; } return cData; } 

然后到现有的string检查修改它,所以它是如下所示:

 public String getString(String jdbcColumn) throws SQLException { Cell cell = getCell(jdbcColumn); if (cell == null) { return cell == null ? null : formatter.formatCellValue(cell); }else{ String myCell = getStrVal(cell); return myCell; } } 

这解决了公式和引用单元格的问题。

Interesting Posts