2

我正在尝试使用 JExcel API 复制包含多个工作表和大量公式的大型 Excel 文件;但是,当我运行以下代码时-

Workbook w = Workbook.getWorkbook(inputWorkbook);

WritableWorkbook wcopy = Workbook.createWorkbook(new File("C:/filename.xls"), w);

我收到以下错误...

>jxl.common.AssertionFailed
>>> at jxl.common.Assert.verify(Assert.java:37)
>>> at jxl.write.biff.SheetCopier.copySheet(SheetCopier.java:329)
>>> at jxl.write.biff.WritableSheetImpl.copy(WritableSheetImpl.java:1584)
>>> at jxl.write.biff.WritableWorkbookImpl.copyWorkbook(WritableWorkbookImpl.java:971)
>>> at jxl.write.biff.WritableWorkbookImpl.<init>(WritableWorkbookImpl.java:343)
>>> at jxl.Workbook.createWorkbook(Workbook.java:339)
>>> at jxl.Workbook.createWorkbook(Workbook.java:320)
>>> at shortcut.ModifyCell.getValue(ModifyCell.java:66)
>>> at shortcut.ModifyCell.main(ModifyCell.java:88)

>Exception in thread "main" jxl.common.AssertionFailed
>>> at jxl.common.Assert.verify(Assert.java:37)
>>> at jxl.write.biff.SheetCopier.copySheet(SheetCopier.java:329)
>>> at jxl.write.biff.WritableSheetImpl.copy(WritableSheetImpl.java:1584)
>>> at jxl.write.biff.WritableWorkbookImpl.copyWorkbook(WritableWorkbookImpl.java:971)
>>> at jxl.write.biff.WritableWorkbookImpl.<init>(WritableWorkbookImpl.java:343)
>>> at jxl.Workbook.createWorkbook(Workbook.java:339)
>>> at jxl.Workbook.createWorkbook(Workbook.java:320)
>>> at shortcut.ModifyCell.getValue(ModifyCell.java:66)
>>> at shortcut.ModifyCell.main(ModifyCell.java:88)

并使用给定名称创建一个空白 Excel 文件。我想知道使用 JExcel API 复制电子表格是否有任何已知限制——例如,无法读取的格式或公式、大小限制、宏限制等?

(当我在他们的示例电子表格上运行代码时,它复制得非常好,所以我认为这不是代码问题,尽管我可能是错的。)

//编辑:这是我收到的警告(每个警告的倍数):

阅读...

警告:5 的属性存储名称为空 - 设置为根条目

警告:使用本地非内置名称

复制...

警告:共享模板公式为空 - 尝试最新的公式模板

警告:单元格 F155 已包含数据

警告:未知形状类型警告:未知形状类型

警告:H45 处的单元格不存在 - 添加空白

警告:J45 处的单元格不存在 - 添加空白

警告:单元格 H45 已包含数据

警告:单元格 J45 已包含数据

4

1 回答 1

0

每当 JXL 读取公式时,它都会给您一个记录器警告。如果将所有公式更改为数字,警告就会消失。

于 2016-11-12T15:59:22.130 回答