您好,调研结果如下:
创建引用其他工作表的公式时,会创建一些引用索引。如果引用的工作表不存在,则在插入过程中剪切到新列的公式将无法通过引用索引更新其引用。(不存在工作表,没有引用索引。
由于现有体系结构仍然需要工作表存在才能使公式正常运行,因此建议在添加公式之前将引用的工作表放在适当的位置。
如果需要在创建工作表本身之前添加引用不存在的工作表的公式,则可以暂时禁用计算引擎,然后在处理所有更改后重新启用。
- Workbook workbook = new Workbook();
- IWorksheet workSheet = workbook.getWorksheets().get(0);
- workSheet.setName("CIT.WP00.0_调整汇总");
- workbook.setEnableCalculation(false);
- workSheet.getRange(1, 1).setFormula("CIT.WP01.1_预提费用!F7");
- IWorksheet worksheet1 = workbook.getWorksheets().addAfter(workSheet);
- worksheet1.setName("CIT.WP01.1_预提费用");
- workbook.setEnableCalculation(true);
- String sourceFormula = workSheet.getRange(1, 1).getFormula();
- workSheet.getRange(1, 1).getEntireColumn().insert();
- String changeFormula = workSheet.getRange(1, 2).getFormula();
- System.out.print(sourceFormula+','+changeFormula);
复制代码 结果如下:
|