我正在用 JExcelApi 编写电子表格.
我有两个要应用货币格式的单元格。通过阅读 API,我发现了 jxl.write.NumberFormat,它似乎可以满足我的要求。在我的应用程序中,我写了:
NumberFormat currency = new NumberFormat(NumberFormat.CURRENCY_DOLLAR);
WritableCellFormat currencyFormat = new WritableCellFormat(currency);
cells.add(new Formula(col, row, myFormula, currencyFormat));
col 和 row 是要写入的列和行。 myFormula 是要写入的公式。有一个 AVERAGE() 和一个 SUM(),每一个都写入不同的单元格。 cells 是一个 ArrayList,它像这样写入电子表格:
for (WritableCell cell : cells) {
ws.addCell(cell);
}
(围绕它有一个 try/catch block ,但目前无关紧要。)
编辑:ws 是通过 WritableWorkbook.getSheet(String name) 获得的 WritableSheet。添加到 ws 的所有其他内容都没有问题:)
文件写入成功,但当我打开它时收到消息“文件错误。某些数字格式可能已丢失。”我在上面格式化的单元格没有在 Excel 文件中格式化。
我使用的是 Microsoft Excel 2003 SP3 和 JExcelApi 2.6.10。
有人能帮帮我吗? 提前致谢:)
最佳答案
您可以在这里找到帮助: http://www.docjar.com/html/api/jxl/demo/Write.java.html - 使用
WritableCellFormat cfi3 = new WritableCellFormat
(NumberFormats.ACCOUNTING_FLOAT);
关于java - 公式单元格上的 JExcelApi 货币格式 - 文件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1471106/